采购部采购样式

This commit is contained in:
bryan sun
2019-11-06 17:01:47 +08:00
parent 4b718ff6ed
commit bcecdb9b19
16 changed files with 1114 additions and 601 deletions

View File

@@ -29,10 +29,10 @@
<el-input v-model="materialName" style="width: 120px;margin-left: 10px" placeholder="物料名称" size="small" clearable/>
<el-input v-model="materialSpec" style="width: 120px;margin-left: 10px" placeholder="物料规格" size="small" clearable/>
<el-input v-model="materialModel" style="width: 120px;margin-left: 10px" placeholder="物料型号" size="small" clearable/>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px; margin: 0px 10px"/>
</el-row>
<el-row>
<span>物料状态:</span>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px"/>
<!-- <span>物料状态:</span>-->
<el-date-picker
v-model="startTime"
size="small"
@@ -41,18 +41,18 @@
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
style="width:250px;margin-left: 10px"
style="width:250px;margin-left: 0px"
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button
type="success"
size="small"
icon="el-icon-search"
style="margin-left: 10px"
style="margin:10px 10px 0px 10px"
@click="pageCurrent11=1;pageSize11=20;total11=0;searchTable11()">查询</el-button>
<el-popover v-model="visible1" title="调整采购任务" placement="top" width="180">
<el-popover v-model="visible1" placement="top" width="140">
<div style="text-align: right; margin: 0">
<el-select v-model="PersonValue" style="width:150px" placeholder="人员" size="small" filterable clearable>
<el-select v-model="PersonValue" style="width:100px;margin: 10px 0px" placeholder="人员" size="small" filterable clearable>
<el-option
v-for="item in Person"
:key="item.value"
@@ -69,45 +69,39 @@
:data="tableData00"
:row-class-name="tableRowClassName"
border
show-summary
style="width: 100%;max-height: 500px;"
height="500px"
size="mini"
@selection-change="handleSelectionChange1">
<el-table-column :selectable="selectable" align="center" width="50" type="selection"/>
<el-table-column label="物料状态" prop="询价状态编号" align="center" width="100">
<el-table-column label="采购状态" prop="询价状态编号" align="center" width="80">
<template slot-scope="scope">
<el-tag v-if="parseInt(scope.row.询价状态编号)===1" type="warning" size="small">未询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)===3&&parseInt(scope.row.采购状态编号)!==3" type="success" size="small">已询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)!==1&&parseInt(scope.row.采购状态编号)===3" type="info" size="small">已采购</el-tag>
</template>
</el-table-column>
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" prop="供货商" label="供货商" align="center" min-width="100">
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" prop="供货商" label="供货商" align="center" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供货商 }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" prop="任务分配时间" align="center" min-width="120">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
<el-table-column label="机床图号" prop="机床图号" align="center" min-width="100">
<el-table-column label="机床图号" prop="机床图号" align="center" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="组号" prop="组号" align="center" min-width="80">
<el-table-column label="组号" prop="组号" align="center" min-width="50">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column label="物料类别" align="center" min-width="100">
<el-table-column label="物料类别" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料类别 }}
</template>
</el-table-column>
<el-table-column label="物料品种" prop="物料品种" align="center" min-width="100">
<el-table-column label="物料品种" prop="物料品种" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.物料品种 }}
</template>
@@ -117,22 +111,22 @@
{{ scope.row.物料名称 }}
</template>
</el-table-column>
<el-table-column label="图号或型号" prop="物料型号" align="center" min-width="100">
<el-table-column label="图号或型号" prop="物料型号" align="center" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料型号 }}
</template>
</el-table-column>
<el-table-column label="规格" align="center" prop="物料规格" min-width="170" show-overflow-tooltip>
<el-table-column label="规格" align="center" prop="物料规格" min-width="150" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料规格 }}
</template>
</el-table-column>
<el-table-column label="分配数量" align="center" min-width="80" prop="零件数量">
<el-table-column label="分配数量" align="center" min-width="70" prop="零件数量">
<template slot-scope="scope">
{{ scope.row.零件数量 }}
</template>
</el-table-column>
<el-table-column label="库存" align="center" min-width="100" prop="库存">
<el-table-column label="库存" align="center" min-width="50" prop="库存">
<template slot-scope="scope">
{{ scope.row.库存 = Number(scope.row.货位存量 ? scope.row.货位存量 : 0) - Number(scope.row.占用数量) }}
</template>
@@ -142,7 +136,7 @@
<el-input-number v-model="scope.row.使用库存数" :min="0" :max="Number(scope.row.零件数量) > Number(scope.row.货位存量) ? (Number(scope.row.货位存量) - Number(scope.row.占用数量)) : Number(scope.row.零件数量)" :disabled="Number(scope.row.货位存量) === 0 || parseInt(scope.row.采购状态编号)===3" size="mini" style="width: 90px" @change="changeNumber(scope.row)"/>
</template>
</el-table-column>
<el-table-column label="待采数量" align="center" min-width="100" prop="待采购数量">
<el-table-column label="待采数量" align="center" min-width="70" prop="待采购数量">
<template slot-scope="scope">
{{ scope.row.待采购数量 = Number(scope.row.零件数量) - Number(scope.row.使用库存数) }}
</template>
@@ -152,11 +146,16 @@
{{ scope.row.备注 }}
</template>
</el-table-column>
<el-table-column :filters="source" :filter-method="filterSource" align="center" label="数据来源" min-width="90px" prop="零件类型筛选">
<el-table-column :filters="source" :filter-method="filterSource" align="center" label="来源" min-width="60px" prop="零件类型筛选">
<template slot-scope="scope">
{{ Number(scope.row.零件类型) === 1 ? 'BZ' : 'WG' }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" prop="任务分配时间" align="center" min-width="120">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
</el-table>
<div class="block" style="margin: 10px 0 0 0;">
<el-pagination
@@ -196,10 +195,10 @@
<el-input v-model="materialName" style="width: 120px;margin-left: 10px" placeholder="物料名称" size="small" clearable/>
<el-input v-model="materialSpec" style="width: 120px;margin-left: 10px" placeholder="物料规格" size="small" clearable/>
<el-input v-model="materialModel" style="width: 120px;margin-left: 10px" placeholder="物料型号" size="small" clearable/>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px; margin: 0px 10px"/>
</el-row>
<el-row>
<span>物料状态:</span>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px"/>
<!-- <span>物料状态:</span>-->
<el-date-picker
v-model="startTime"
size="small"
@@ -208,7 +207,7 @@
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
style="width:250px;margin-left: 10px"
style="width:250px;margin: 10px 10px 0px 0px"
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button
@@ -217,9 +216,9 @@
icon="el-icon-search"
style="margin-left: 10px"
@click="pageCurrent11=1;pageSize11=20;total11=0;searchTable11()">查询</el-button>
<el-popover v-model="visible" title="调整采购任务" placement="top" width="180">
<el-popover v-model="visible" placement="top" width="140">
<div style="text-align: right; margin: 0">
<el-select v-model="PersonValue" style="width:150px" placeholder="人员" size="small" filterable clearable>
<el-select v-model="PersonValue" style="width:100px;margin: 10px 0px" placeholder="人员" size="small" filterable clearable>
<el-option
v-for="item in Person"
:key="item.value"
@@ -236,45 +235,39 @@
:data="tableData00"
:row-class-name="tableRowClassName"
border
show-summary
style="width: 100%;max-height: 500px;"
height="500px"
size="mini"
@selection-change="handleSelectionChange1">
<el-table-column :selectable="selectable" align="center" width="50" type="selection"/>
<el-table-column label="物料状态" prop="询价状态编号" align="center" width="100">
<el-table-column label="物料状态" prop="询价状态编号" align="center" width="80">
<template slot-scope="scope">
<el-tag v-if="parseInt(scope.row.询价状态编号)===1" type="warning" size="small">未询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)===3&&parseInt(scope.row.采购状态编号)!==3" type="success" size="small">已询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)!==1&&parseInt(scope.row.采购状态编号)===3" type="info" size="small">已采购</el-tag>
</template>
</el-table-column>
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" prop="供货商" label="供货商" align="center" min-width="100">
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" prop="供货商" label="供货商" align="center" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供货商 }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" prop="任务分配时间" align="center" min-width="120">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
<el-table-column label="机床图号" prop="机床图号" align="center" min-width="100">
<el-table-column label="机床图号" prop="机床图号" align="center" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="组号" prop="组号" align="center" min-width="80">
<el-table-column label="组号" prop="组号" align="center" min-width="50">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column label="物料类别" align="center" min-width="100">
<el-table-column label="物料类别" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料类别 }}
</template>
</el-table-column>
<el-table-column label="物料品种" prop="物料品种" align="center" min-width="100">
<el-table-column label="物料品种" prop="物料品种" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.物料品种 }}
</template>
@@ -284,17 +277,17 @@
{{ scope.row.物料名称 }}
</template>
</el-table-column>
<el-table-column label="图号或型号" prop="物料型号" align="center" min-width="100">
<el-table-column label="图号或型号" prop="物料型号" align="center" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料型号 }}
</template>
</el-table-column>
<el-table-column label="规格" align="center" prop="物料规格" min-width="200" show-overflow-tooltip>
<el-table-column label="规格" align="center" prop="物料规格" min-width="150" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料规格 }}
</template>
</el-table-column>
<el-table-column label="分配数量" align="center" min-width="80" prop="零件数量">
<el-table-column label="分配数量" align="center" min-width="70" prop="零件数量">
<template slot-scope="scope">
{{ scope.row.零件数量 }}
</template>
@@ -317,7 +310,7 @@
{{ Number(scope.row.滞货数量) }}
</template>
</el-table-column>
<el-table-column label="待采购数" align="center" min-width="80" prop="待采购数量">
<el-table-column label="待采购数" align="center" min-width="70" prop="待采购数量">
<template slot-scope="scope">
{{ scope.row.待采购数量 = Number(scope.row.零件数量) - Number(scope.row.使用滞货数量) }}
</template>
@@ -332,6 +325,11 @@
{{ Number(scope.row.零件类型) === 1 ? 'BZ' : 'WG' }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" prop="任务分配时间" align="center" min-width="110">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
</el-table>
<div class="block" style="margin: 10px 0 0 0;">
<el-pagination
@@ -371,10 +369,10 @@
<el-input v-model="partNum" style="width: 120px;margin-left: 10px" placeholder="零件图号" size="small" clearable/>
<el-input v-model="partName" style="width: 120px;margin-left: 10px" placeholder="零件名称" size="small" clearable/>
<el-input v-model="partSpec" style="width: 120px;margin-left: 10px" placeholder="零件规格" size="small" clearable/>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px;margin: 0px 10px"/>
</el-row>
<el-row>
<span style="margin-right: -10px">物料状态:</span>
<el-cascader :options="materialStatus" :props="{ checkStrictly: true }" v-model="materialStatusValue" size="small" style="width: 120px;margin-left: 10px"/>
<!-- <span style="margin-right: -10px">物料状态:</span>-->
<el-date-picker
v-model="startTime"
size="small"
@@ -383,13 +381,13 @@
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
range-separator=""
style="width:250px;margin-left: 10px"
style="width:250px;margi: 10px 10px 0px 0px"
start-placeholder="开始日期"
end-placeholder="结束日期"/>
<el-button type="success" size="small" icon="el-icon-search" style="margin-left: 10px" @click="pageCurrent12=1;pageSize12=100;total12=0;searchTable12()">查询</el-button>
<el-popover v-model="visible2" title="调整采购任务" placement="top" width="180">
<el-popover v-model="visible2" placement="top" width="140">
<div style="text-align: right; margin: 0">
<el-select v-model="PersonValue" style="width:150px" placeholder="人员" size="small" filterable clearable>
<el-select v-model="PersonValue" style="width:100px;margin: 10px 0px" placeholder="人员" size="small" filterable clearable>
<el-option
v-for="item in Person"
:key="item.value"
@@ -412,64 +410,54 @@
size="mini"
@selection-change="handleSelectionChange1">
<el-table-column :selectable="selectable" align="center" width="50" type="selection"/>
<el-table-column label="零件状态" align="center" width="100">
<el-table-column label="零件状态" align="center" width="80">
<template slot-scope="scope">
<el-tag v-if="parseInt(scope.row.询价状态编号)===1" type="warning" size="small">未询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)===3&&parseInt(scope.row.采购状态编号)!==3" type="success" size="small">已询价</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)!==1&&parseInt(scope.row.采购状态编号)===3" type="info" size="small">已采购</el-tag>
</template>
</el-table-column>
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" label="供货商" align="center" min-width="100" prop="供货商">
<el-table-column :filters="supplierFilters" :filter-method="filterHandler" label="供货商" align="center" min-width="120" prop="供货商" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供货商 }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
<el-table-column label="项目名称" align="center" min-width="100">
<el-table-column label="项目名称" align="center" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.项目名称 }}
</template>
</el-table-column>
<el-table-column label="机床图号" align="center" min-width="100">
<el-table-column label="机床图号" align="center" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="设计者" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.组件设计者 || scope.row.机床设计者 || '—' }}
</template>
</el-table-column>
<el-table-column label="组号" align="center" min-width="80">
<el-table-column label="组号" align="center" min-width="50">
<template slot-scope="scope">
{{ scope.row.组号 }}
</template>
</el-table-column>
<el-table-column label="图号" align="center" min-width="100">
<el-table-column label="图号" align="center" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.零件图号 }}
</template>
</el-table-column>
<el-table-column label="名称" align="center" min-width="100">
<el-table-column label="名称" align="center" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="规格" align="center" min-width="100">
<el-table-column label="规格" align="center" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.规格 }}
</template>
</el-table-column>
<el-table-column label="材料" align="center" min-width="100">
<el-table-column label="材料" align="center" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.材料 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" min-width="80">
<el-table-column label="数量" align="center" min-width="50">
<template slot-scope="scope">
{{ scope.row.待采购数量 }}
</template>
@@ -479,6 +467,16 @@
{{ scope.row.备注 }}
</template>
</el-table-column>
<el-table-column label="设计者" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.组件设计者 || scope.row.机床设计者 || '—' }}
</template>
</el-table-column>
<el-table-column label="任务分配时间" align="center" min-width="110">
<template slot-scope="scope">
{{ scope.row.任务分配时间 ? scope.row.任务分配时间.split(' ')[0] : '-' }}
</template>
</el-table-column>
</el-table>
</el-row>
<div class="block">
@@ -594,16 +592,16 @@
<el-card>
<div slot="header">
<span>离线合同号:</span>
<el-input v-model="offlineContract" placeholder="离线合同号" size="small" clearable/>
<span>供应商:</span>
<el-input v-model="supplierName0" placeholder="供应商" size="small" clearable/>
<!-- <span>离线合同号:</span>-->
<el-input v-model="offlineContract" placeholder="离线合同号" size="small" style="width: 140px" clearable/>
<!-- <span>供应商:</span>-->
<el-input v-model="supplierName0" placeholder="供应商" size="small" style="width: 140px" clearable/>
<el-button
type="success"
size="small"
icon="el-icon-search"
style="margin-left: 10px"
@click="pageCurrent2=1;pageSize2=10;total2=0;searchTable2()">查询</el-button>
@click="pageCurrent2=1;pageSize2=10000;total2=0;searchTable2()">查询</el-button>
<el-button
type="primary"
size="small"
@@ -617,8 +615,25 @@
style="margin-left: 10px"
@click="addMateriel">选入物料</el-button>
</el-tooltip>
<el-tooltip :open-delay="1000" effect="dark" content="生成合同" placement="top">
<el-button :disabled="disable" type="success" size="mini" style="float:right;margin-left:10px" @click="doneOfflineContact">生成</el-button>
</el-tooltip>
<el-button :disabled="disable" type="info" size="mini" style="float:right" @click="saveContract">保存</el-button>
<el-tooltip :content="hasTax" placement="top">
<el-switch
v-model="hasTax"
active-color="#13ce66"
inactive-color="#ff4949"
active-value="含税"
inactive-value="未税"
style="margin: 3px;float:right"/>
</el-tooltip>
<el-input v-model="taxRate" style="float:right;width:100px" placeholder="税率" size="mini"/>
<h4 style="float:right;width: 40px;margin: 5px">税率:</h4>
<el-button v-if="quickChangePrice" size="mini" style="float:right; width80px" @click="quickChangePrice=!quickChangePrice">快速修改价格</el-button>
<el-button v-else size="mini" style="float:right;" @click="quickChangePrice=!quickChangePrice">还原</el-button>
</div>
<el-table v-loading="" :data="tableData2" border style="max-height: 460px;" height="300px" size="mini" highlight-current-row @row-click="searchTable3">
<el-table v-loading="" :data="tableData2" border style="max-height: 460px;" size="mini" highlight-current-row @row-click="searchTable3">
<el-table-column label="详情" type="expand" fixed="left">
<template slot-scope="scope">
<el-form label-position="left" inline class="demo-table-expand">
@@ -628,24 +643,24 @@
</el-form>
</template>
</el-table-column>
<el-table-column label="合同状态" align="center" width="100" fixed="left">
<el-table-column label="合同状态" align="center" width="80" fixed="left">
<template slot-scope="scope">
<el-tag v-if="editing(scope.row)" type="warning" size="small">编辑中</el-tag>
<el-tag v-if="purchasing(scope.row)" type="primary" size="small">已采购</el-tag>
<el-tag v-if="arrival(scope.row)" type="success" size="small">全部到货</el-tag>
</template>
</el-table-column>
<el-table-column label="离线合同编号" prop="离线合同编号" align="center" min-width="170">
<el-table-column label="离线合同编号" prop="离线合同编号" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.离线合同编号 }}
</template>
</el-table-column>
<el-table-column label="离线合同名称" align="center" min-width="170">
<el-table-column label="离线合同名称" align="center" min-width="130" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.离线合同名称 }}
</template>
</el-table-column>
<el-table-column label="供应商" prop="供应商名称" align="center" min-width="250" show-overflow-tooltip>
<el-table-column label="供应商" prop="供应商名称" align="center" min-width="220" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.供应商名称 }}
</template>
@@ -665,12 +680,12 @@
{{ scope.row.规定到货时间.split(' ')[0] }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="240" fixed="right">
<el-table-column label="操作" align="center" width="120" fixed="right">
<template slot-scope="scope">
<el-button :disabled="arrival(scope.row)" type="warning" plain size="mini" @click="editOfflineContract(scope.row)">编辑</el-button>
<el-button :disabled="arrival(scope.row)" type="danger" plain size="mini" @click="deleteOfflineContract(scope.row)">删除</el-button>
<el-button :disabled="arrival(scope.row)" type="text" icon="el-icon-edit" plain size="mini" @click="editOfflineContract(scope.row)"/>
<el-button :disabled="arrival(scope.row)" type="text" icon="el-icon-delete" plain size="mini" @click="deleteOfflineContract(scope.row)"/>
<el-tooltip :open-delay="1000" effect="dark" content="导出合同" placement="top">
<el-button type="warning" size="mini" plain @click="exportExcel(scope.row)">导出</el-button>
<el-button type="text" size="mini" icon="el-icon-right" plain @click="exportExcel(scope.row)"/>
</el-tooltip>
</template>
@@ -683,26 +698,9 @@
:page-size="pageSize2"
:total="total2"
style="display:inline-block;width:50%"
layout="total, sizes, prev, pager, next, jumper"
layout="total"
@size-change="handleSizeChange2"
@current-change="handleCurrentChange2"/>
<el-tooltip :open-delay="1000" effect="dark" content="生成合同" placement="top">
<el-button :disabled="disable" type="success" size="mini" style="float:right;margin-left:10px" @click="doneOfflineContact">生成</el-button>
</el-tooltip>
<el-button :disabled="disable" type="info" size="mini" style="float:right" @click="saveContract">保存</el-button>
<el-tooltip :content="hasTax" placement="top">
<el-switch
v-model="hasTax"
active-color="#13ce66"
inactive-color="#ff4949"
active-value="含税"
inactive-value="未税"
style="margin: 3px;float:right"/>
</el-tooltip>
<el-input v-model="taxRate" style="float:right;width:100px" placeholder="税率" size="mini"/>
<h4 style="float:right;width: 40px;margin: 5px">税率:</h4>
<el-button v-if="quickChangePrice" size="mini" style="float:right;" @click="quickChangePrice=!quickChangePrice">快速修改价格</el-button>
<el-button v-else size="mini" style="float:right;" @click="quickChangePrice=!quickChangePrice">还原</el-button>
</div>
<el-dialog v-el-drag-dialog :visible.sync="dialogVisible4" title="使用滞货" center style="min-height: 300px;" width="400px">
<span>使用滞货数量:</span>
@@ -715,43 +713,43 @@
</el-dialog>
<!--<h3>合同详细信息</h3>-->
<el-table v-loading="" :data="tableData3" :summary-method="getSummaries" border style="max-height: 500px;" height="450px" size="mini" show-summary>
<el-table-column label="离线合同编号" align="center" width="110">
<template slot-scope="scope">
{{ scope.row.离线合同编号 }}
</template>
</el-table-column>
<el-table-column label="物料名称" align="center" min-width="150">
<!-- <el-table-column label="离线合同编号" align="center" width="110">-->
<!-- <template slot-scope="scope">-->
<!-- {{ scope.row.离线合同编号 }}-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="物料名称" align="center" min-width="150" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料名称 ? scope.row.物料名称 : scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="规格" align="center" min-width="100">
<el-table-column label="规格" align="center" width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料规格 ? scope.row.物料规格 : scope.row.规格 }}
</template>
</el-table-column>
<el-table-column label="图号或型号" align="center" min-width="200">
<el-table-column label="图号或型号" align="center" min-width="200" show-overflow-tooltip>
<template slot-scope="scope">
{{ scope.row.物料型号 ? scope.row.物料型号 : scope.row.零件图号 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" min-width="100">
<template slot-scope="scope">
<el-input v-direction="{x: 0, y: scope.$index}" v-if="quickChangePrice" v-model="scope.row.数量" :disabled="disable" size="mini" style="width:70px"/>
<el-input v-direction="{x: 0, y: scope.$index}" v-if="quickChangePrice" v-model="scope.row.数量" :disabled="disable" size="mini" style="width:60px"/>
<b v-else>{{ scope.row.数量 }}</b>
</template>
</el-table-column>
<el-table-column label="单位" align="center" min-width="60">
<el-table-column label="单位" align="center" min-width="50">
<template slot-scope="scope">
{{ scope.row.计量单位 }}
</template>
</el-table-column>
<el-table-column label="参考价格" align="center" min-width="100">
<el-table-column label="参考价格" align="center" min-width="70">
<template slot-scope="scope">
{{ scope.row.参考价格 }}
</template>
</el-table-column>
<el-table-column label="单价(未税)" align="center" min-width="100" prop="单价">
<el-table-column label="单价(未税)" align="center" width="80" prop="单价">
<template slot-scope="scope">
<el-input v-direction="{x: 1, y: scope.$index}" v-if="hasTax==='未税'" v-model="scope.row.未税单价" :disabled="disable" size="mini" style="width:70px"/>
<b v-show="hasTax!=='未税'">{{ (scope.row.单价 / (1 + taxRate)).toFixed(2) }}</b>
@@ -763,28 +761,28 @@
<b v-show="hasTax!=='含税'">{{ (scope.row.未税单价 * (1 + taxRate)).toFixed(2) }}</b>
</template>
</el-table-column>
<el-table-column label="总额(未税)" align="center" min-width="100" prop="合计">
<el-table-column label="总额(未税)" align="center" width="80" prop="合计">
<template slot-scope="scope">
{{ hasTax==='未税' ? scope.row.未税总额 = (Number(scope.row.数量) * Number(scope.row.未税单价)).toFixed(2) : scope.row.未税总额 = (scope.row.含税总额 / (1+taxRate)).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="总额(含税)" align="center" min-width="100" prop="合计">
<el-table-column label="总额(含税)" align="center" width="80" prop="合计">
<template slot-scope="scope">
{{ hasTax==='含税' ? scope.row.含税总额 = (Number(scope.row.数量) * Number(scope.row.单价)).toFixed(2) : scope.row.含税总额 = (scope.row.未税总额 * (1+taxRate)).toFixed(2) }}
</template>
</el-table-column>
<el-table-column label="交货期要求" align="center" min-width="100" prop="交货期要求">
<template slot-scope="scope">
<el-input v-direction="{x: 2, y: scope.$index}" v-if="quickChangePrice" v-model="scope.row.交货期要求" :disabled="disable" size="mini" style="width:70px"/>
<b v-else>{{ scope.row.交货期要求 || '—' }}</b>
</template>
</el-table-column>
<el-table-column label="备注" align="center" min-width="150" prop="备注">
<el-table-column label="备注" align="center" min-width="160" prop="备注">
<template slot-scope="scope">
<el-input v-direction="{x: 3, y: scope.$index}" v-if="quickChangePrice" v-model="scope.row.备注" :disabled="disable" size="mini" style="width:120px"/>
<b v-else>{{ scope.row.备注 || '—' }}</b>
</template>
</el-table-column>
<el-table-column label="交货期要求" align="center" min-width="130" prop="交货期要求">
<template slot-scope="scope">
<el-input v-direction="{x: 2, y: scope.$index}" v-if="quickChangePrice" v-model="scope.row.交货期要求" :disabled="disable" size="mini" style="width:90px"/>
<b v-else>{{ scope.row.交货期要求 || '—' }}</b>
</template>
</el-table-column>
<el-table-column v-if="disable" label="到货数量" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.到货数量 }}
@@ -922,10 +920,19 @@
<el-row>
<el-col :span="12">
<el-form-item label="供应商名称" prop="供应商名称">
<el-input v-model="form2.供应商名称" size="small" readonly>
<el-button slot="append" icon="el-icon-search" @click="dialogVisible1=true"/>
</el-input>
<el-select v-model="form2.供应商名称" style="width:150px" placeholder="供应商" size="small" filterable>
<el-option
v-for="item in supplierNames"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<!-- <el-form-item label="供应商名称" prop="供应商名称">-->
<!-- <el-input v-model="form2.供应商名称" size="small" readonly>-->
<!-- <el-button slot="append" icon="el-icon-search" @click="dialogVisible1=true"/>-->
<!-- </el-input>-->
<!-- </el-form-item>-->
</el-col>
<el-col :span="12">
<el-form-item label="规定到货时间" prop="规定到货时间">
@@ -1008,7 +1015,7 @@
<script>
import { tiaozheng2, tiaozheng1, searchOfflineContract, searchOfflineContract2, searchSupplier, addOfflineContract, editOfflineContract, deleteOfflineContract, searchMateriel, searchMaterial1,
addMateriel, deleteMateriel, saveOfflineContact, doneOfflineContact, searchMaterial22, searchMachine, searchGroup, initProject, changeNum, submitUseInventory,
searchPart, getPerson } from '@/api/PurchasingCenter/OfflineContract'
searchPart, getPerson, searchSupplier1 } from '@/api/PurchasingCenter/OfflineContract'
import QRCode from 'qrcode'
import $ from 'jquery'
import { mapGetters } from 'vuex'
@@ -1017,6 +1024,7 @@ export default {
name: '', // 离线合同
data() {
return {
supplierNames: [],
startTime: '',
标准件和外购件流水号: [],
基本件流水号: [],
@@ -1045,7 +1053,7 @@ export default {
tableData02: [],
tableData22: [],
dialogVisible0: false,
materialStatusValue: [0], // 物料状态
materialStatusValue: [3], // 物料状态
materialStatus: [
{
value: 0,
@@ -1140,7 +1148,7 @@ export default {
group: [],
total2: 0,
pageCurrent2: 1,
pageSize2: 10,
pageSize2: 10000,
dialogVisible1: false,
form1: {},
supplierCheck1: 0,
@@ -1218,7 +1226,7 @@ export default {
created() {
this.getPerson()
this.fetchData()
this.searchTable2()
// this.searchTable2()
this.searchTable11()
this.initDirection()
},
@@ -1354,10 +1362,10 @@ export default {
return Number(row.离线合同状态) === 1
},
purchasing(row) {
return Number(row.离线合同状态) === 2 && Number(row.总采购数量) !== Number(row.总到货数量)
return Number(row.离线合同状态) === 2 && Number(row.总采购数量) > Number(row.总到货数量)
},
arrival(row) {
return Number(row.总采购数量) === Number(row.总到货数量) && Number(row.总采购数量) !== 0
return Number(row.总采购数量) <= Number(row.总到货数量) && Number(row.总采购数量) !== 0
},
useqrcode(contractNum) {
const opts = {
@@ -1429,6 +1437,7 @@ export default {
if (this.$refs['form2'] !== undefined) {
this.$refs['form2'].resetFields()
}
this.getSupplier1()
this.title2 = '创建离线合同'
this.form2.离线合同编号 = ''
this.form2.离线合同名称 = ''
@@ -1438,6 +1447,18 @@ export default {
this.form2.离线合同备注 = '付款方式:;付款时间:;到货时间:;开票信息:;其他说明:;'
this.dialogVisible2 = true
},
getSupplier1() {
this.supplierNames = []
this.form2.供应商名称 = ''
searchSupplier1(0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '', 0, '').then(response => {
for (let i = 0; i < response.data.length; i++) {
this.supplierNames.push({
label: response.data[i].供应商名称,
value: response.data[i].供应商流水号
})
}
})
},
submitAddOfflineContract() { // 新建离线合同
this.$refs['form2'].validate((valid) => {
if (valid) {
@@ -1450,10 +1471,11 @@ export default {
if (numGroup1.indexOf(this.form2.离线合同编号) !== -1) {
this.$message.error('该离线合同编号已存在')
} else {
addOfflineContract(this.form2.离线合同编号, this.form2.离线合同名称, this.form2.供应商流水号, this.id, this.form2.规定到货时间, this.form2.离线合同备注).then(response => {
addOfflineContract(this.form2.离线合同编号, this.form2.离线合同名称, this.form2.供应商名称, this.id, this.form2.规定到货时间, this.form2.离线合同备注).then(response => {
if (response.data[0].result === '1') {
this.$message.success('新建离线合同成功')
this.searchTable2()
this.offlineContract = this.form2.离线合同编号
this.searchTable2(this.offlineContract)
this.dialogVisible2 = false
} else { this.$message.error('新建离线合同失败') }
})