|
@@ -1,91 +1,105 @@
|
|
<template>
|
|
<template>
|
|
<!-- 退料单-->
|
|
<!-- 退料单-->
|
|
- <div>
|
|
|
|
|
|
+ <div class="app-container">
|
|
<!-- 筛选条件 -->
|
|
<!-- 筛选条件 -->
|
|
<div class="screen-container">
|
|
<div class="screen-container">
|
|
<Collapse :is-collapse="isCollapse" :screen-form="screenForm">
|
|
<Collapse :is-collapse="isCollapse" :screen-form="screenForm">
|
|
- <template #right_btn>
|
|
|
|
- <el-button size="mini" @click="resetScreenForm">清空</el-button>
|
|
|
|
- <el-button size="mini" type="primary" @click="submitScreenForm"
|
|
|
|
- >搜索</el-button
|
|
|
|
- >
|
|
|
|
- </template>
|
|
|
|
- <template #search>
|
|
|
|
- <el-form
|
|
|
|
- ref="screenForm"
|
|
|
|
- :model="screenForm"
|
|
|
|
- label-width="70px"
|
|
|
|
- size="mini"
|
|
|
|
- label-position="left"
|
|
|
|
- >
|
|
|
|
- <el-row :gutter="20">
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="单据编码" prop="orderNum">
|
|
|
|
- <el-input
|
|
|
|
- v-model="screenForm.orderNum"
|
|
|
|
- placeholder="请输入单据编码"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="存货名称" prop="chName">
|
|
|
|
- <el-input
|
|
|
|
- v-model="screenForm.chName"
|
|
|
|
- placeholder="请输入存货名称"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="存货编码" prop="chNum">
|
|
|
|
- <el-input
|
|
|
|
- v-model="screenForm.chNum"
|
|
|
|
- placeholder="请输入存货编码"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="退料日期" prop="date">
|
|
|
|
- <el-date-picker
|
|
|
|
- v-model="screenForm.date"
|
|
|
|
- type="datetimerange"
|
|
|
|
- range-separator="至"
|
|
|
|
- style="width: 100%"
|
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
- start-placeholder="开始日期"
|
|
|
|
- end-placeholder="结束日期"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="供应商" prop="company">
|
|
|
|
- <el-input
|
|
|
|
- v-model="screenForm.company"
|
|
|
|
- placeholder="请输入供货单位"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
- <el-form-item label="仓库" prop="chNum">
|
|
|
|
- <el-input
|
|
|
|
- v-model="screenForm.chNum"
|
|
|
|
- placeholder="请输入仓库"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </el-form>
|
|
|
|
- </template>
|
|
|
|
|
|
+ <template #right_btn> </template>
|
|
|
|
+ <template #search> </template>
|
|
</Collapse>
|
|
</Collapse>
|
|
|
|
+ <el-form
|
|
|
|
+ ref="screenForm"
|
|
|
|
+ :model="screenForm"
|
|
|
|
+ label-width="70px"
|
|
|
|
+ size="mini"
|
|
|
|
+ label-position="left"
|
|
|
|
+ >
|
|
|
|
+ <el-row :gutter="20">
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="单据编码" prop="billNo">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="screenForm.billNo"
|
|
|
|
+ placeholder="请输入单据编码"
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="物料名称" prop="materialName">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="screenForm.materialName"
|
|
|
|
+ placeholder="请输入物料名称"
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="物料编码" prop="materialNumber">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="screenForm.materialNumber"
|
|
|
|
+ placeholder="请输入物料编码"
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="退料日期" prop="date">
|
|
|
|
+ <el-date-picker
|
|
|
|
+ v-model="screenForm.date"
|
|
|
|
+ type="datetimerange"
|
|
|
|
+ range-separator="至"
|
|
|
|
+ style="width: 100%"
|
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
+ start-placeholder="开始日期"
|
|
|
|
+ end-placeholder="结束日期"
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="供应商" prop="supplierName">
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="screenForm.supplierName"
|
|
|
|
+ placeholder="请输入供货单位"
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="6">
|
|
|
|
+ <el-form-item label="仓库" prop="correspondId">
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="screenForm.correspondId"
|
|
|
|
+ multiple
|
|
|
|
+ style="width: 100%"
|
|
|
|
+ placeholder="请选择仓库"
|
|
|
|
+ size="mini"
|
|
|
|
+ filterable
|
|
|
|
+ clearable
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item, index) in warehouseList"
|
|
|
|
+ :key="index"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.id"
|
|
|
|
+ />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" class="tr">
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button size="mini" @click="resetScreenForm">清空</el-button>
|
|
|
|
+ <el-button size="mini" type="primary" @click="submitScreenForm"
|
|
|
|
+ >搜索</el-button
|
|
|
|
+ >
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </el-form>
|
|
</div>
|
|
</div>
|
|
<div class="mymain-container">
|
|
<div class="mymain-container">
|
|
- <div class="btn-group clearfix">
|
|
|
|
- <div class="fr">
|
|
|
|
- <ExportButton
|
|
|
|
- :ex-url="'admin/user/mch/export'"
|
|
|
|
- :ex-params="exParams"
|
|
|
|
- />
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <!-- <div class="btn-group clearfix">-->
|
|
|
|
+ <!-- <div class="fr">-->
|
|
|
|
+ <!-- <ExportButton-->
|
|
|
|
+ <!-- :ex-url="'admin/user/mch/export'"-->
|
|
|
|
+ <!-- :ex-params="exParams"-->
|
|
|
|
+ <!-- />-->
|
|
|
|
+ <!-- </div>-->
|
|
|
|
+ <!-- </div>-->
|
|
<div class="table">
|
|
<div class="table">
|
|
<el-table
|
|
<el-table
|
|
v-loading="listLoading"
|
|
v-loading="listLoading"
|
|
@@ -95,8 +109,6 @@
|
|
fit
|
|
fit
|
|
highlight-current-row
|
|
highlight-current-row
|
|
stripe
|
|
stripe
|
|
- show-summary
|
|
|
|
- :summary-method="$getSummaries"
|
|
|
|
>
|
|
>
|
|
<el-table-column
|
|
<el-table-column
|
|
label="序号"
|
|
label="序号"
|
|
@@ -122,34 +134,40 @@
|
|
align="left"
|
|
align="left"
|
|
label="退料日期"
|
|
label="退料日期"
|
|
prop="fdate"
|
|
prop="fdate"
|
|
- min-width="120"
|
|
|
|
|
|
+ min-width="150"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
>
|
|
>
|
|
- <template slot-scope="scope">
|
|
|
|
- {{ scope.row.fdate | dateToDayFilter }}
|
|
|
|
- </template>
|
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="供货商"
|
|
label="供货商"
|
|
- prop="stockId"
|
|
|
|
- min-width="100"
|
|
|
|
|
|
+ prop="supplierId"
|
|
|
|
+ min-width="200"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="单据状态"
|
|
label="单据状态"
|
|
- prop="supplyName"
|
|
|
|
- min-width="200"
|
|
|
|
|
|
+ prop="fdDocumentStatus"
|
|
|
|
+ min-width="120"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
- />
|
|
|
|
|
|
+ >
|
|
|
|
+ <template v-slot="scope">
|
|
|
|
+ {{ scope.row.fdDocumentStatus === "C" ? "已审核" : "" }}
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="厂产品编码"
|
|
label="厂产品编码"
|
|
- prop="approveDate"
|
|
|
|
|
|
+ prop="materialOldNumber"
|
|
min-width="160"
|
|
min-width="160"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
- />
|
|
|
|
|
|
+ >
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <CopyButton :copy-text="scope.row.materialOldNumber" />
|
|
|
|
+ <span>{{ scope.row.materialOldNumber }}</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="存货编码"
|
|
label="存货编码"
|
|
@@ -165,20 +183,20 @@
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="存货名称"
|
|
label="存货名称"
|
|
- prop="materialOldNumber"
|
|
|
|
- min-width="140"
|
|
|
|
|
|
+ prop="materialName"
|
|
|
|
+ min-width="200"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
>
|
|
>
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- <CopyButton :copy-text="scope.row.materialOldNumber" />
|
|
|
|
- <span>{{ scope.row.materialOldNumber }}</span>
|
|
|
|
|
|
+ <CopyButton :copy-text="scope.row.materialName" />
|
|
|
|
+ <span>{{ scope.row.materialName }}</span>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="规格型号"
|
|
label="规格型号"
|
|
prop="materialName"
|
|
prop="materialName"
|
|
- min-width="160"
|
|
|
|
|
|
+ min-width="300"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
>
|
|
>
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
@@ -189,38 +207,49 @@
|
|
<el-table-column
|
|
<el-table-column
|
|
align="left"
|
|
align="left"
|
|
label="库存单位"
|
|
label="库存单位"
|
|
- prop="uom"
|
|
|
|
- min-width="350"
|
|
|
|
|
|
+ prop="unit"
|
|
|
|
+ min-width="300"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
>
|
|
>
|
|
- <template slot-scope="scope">
|
|
|
|
- <CopyButton :copy-text="scope.row.uom" />
|
|
|
|
- <span>{{ scope.row.uom }}</span>
|
|
|
|
- </template>
|
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column
|
|
<el-table-column
|
|
- align="left"
|
|
|
|
|
|
+ align="right"
|
|
label="实退数量"
|
|
label="实退数量"
|
|
- prop="unit"
|
|
|
|
|
|
+ prop="qty"
|
|
min-width="100"
|
|
min-width="100"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
/>
|
|
/>
|
|
<el-table-column
|
|
<el-table-column
|
|
align="right"
|
|
align="right"
|
|
label="仓库"
|
|
label="仓库"
|
|
- prop="realQty"
|
|
|
|
|
|
+ prop="stockName"
|
|
min-width="100"
|
|
min-width="100"
|
|
show-overflow-tooltip
|
|
show-overflow-tooltip
|
|
/>
|
|
/>
|
|
|
|
+ <!-- <el-table-column-->
|
|
|
|
+ <!-- align="right"-->
|
|
|
|
+ <!-- label="开票状态"-->
|
|
|
|
+ <!-- prop="taxPrice"-->
|
|
|
|
+ <!-- min-width="120"-->
|
|
|
|
+ <!-- show-overflow-tooltip-->
|
|
|
|
+ <!-- >-->
|
|
|
|
+ <!-- <template slot-scope="scope">-->
|
|
|
|
+ <!-- {{ scope.row.taxPrice | numToFixed }}-->
|
|
|
|
+ <!-- </template>-->
|
|
|
|
+ <!-- </el-table-column>-->
|
|
<el-table-column
|
|
<el-table-column
|
|
- align="right"
|
|
|
|
- label="开票状态"
|
|
|
|
- prop="taxPrice"
|
|
|
|
- min-width="120"
|
|
|
|
- show-overflow-tooltip
|
|
|
|
|
|
+ align="center"
|
|
|
|
+ label="操作"
|
|
|
|
+ width="100"
|
|
|
|
+ fixed="right"
|
|
>
|
|
>
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- {{ scope.row.taxPrice | numToFixed }}
|
|
|
|
|
|
+ <el-popconfirm
|
|
|
|
+ title="弃审吗?"
|
|
|
|
+ @onConfirm="handleUnapprove(scope.row.id, scope.row.billNo)"
|
|
|
|
+ >
|
|
|
|
+ <el-button slot="reference" type="text">弃审</el-button>
|
|
|
|
+ </el-popconfirm>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
@@ -243,7 +272,11 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import { getEnterList } from "@/api/supply/purchase";
|
|
|
|
|
|
+import {
|
|
|
|
+ getPurchaseOutList,
|
|
|
|
+ setApprovalPurchaseOrderOut,
|
|
|
|
+} from "@/api/supply/purchase";
|
|
|
|
+import { getWarehouseList } from "@/api/supply/apply";
|
|
|
|
|
|
export default {
|
|
export default {
|
|
name: "MaterialList",
|
|
name: "MaterialList",
|
|
@@ -255,25 +288,33 @@ export default {
|
|
dataList: null, // 列表数据
|
|
dataList: null, // 列表数据
|
|
listLoading: false, // 列表加载loading
|
|
listLoading: false, // 列表加载loading
|
|
screenForm: {
|
|
screenForm: {
|
|
- // 筛选表单数据
|
|
|
|
- orderNum: "",
|
|
|
|
- chName: "",
|
|
|
|
- chNum: "",
|
|
|
|
|
|
+ billNo: "",
|
|
|
|
+ correspondId: [],
|
|
|
|
+ endTime: "",
|
|
date: "",
|
|
date: "",
|
|
- company: "",
|
|
|
|
|
|
+ materialName: "",
|
|
|
|
+ materialNumber: "",
|
|
|
|
+ materialOldNumber: "",
|
|
|
|
+ specification: "",
|
|
|
|
+ startTime: "",
|
|
|
|
+ supplierName: "",
|
|
},
|
|
},
|
|
isCollapse: true,
|
|
isCollapse: true,
|
|
|
|
+ warehouseList: [],
|
|
};
|
|
};
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
exParams() {
|
|
exParams() {
|
|
return {
|
|
return {
|
|
- billNo: this.screenForm.orderNum,
|
|
|
|
- materialName: this.screenForm.chName,
|
|
|
|
- materialCode: this.screenForm.chNum,
|
|
|
|
- startTime: this.screenForm.date ? this.screenForm.date[0] : "",
|
|
|
|
|
|
+ billNo: this.screenForm.billNo,
|
|
|
|
+ correspondId: this.screenForm.correspondId.join(","),
|
|
endTime: this.screenForm.date ? this.screenForm.date[1] : "",
|
|
endTime: this.screenForm.date ? this.screenForm.date[1] : "",
|
|
- supplyName: this.screenForm.company,
|
|
|
|
|
|
+ materialName: this.screenForm.materialName,
|
|
|
|
+ materialNumber: this.screenForm.materialNumber,
|
|
|
|
+ materialOldNumber: this.screenForm.materialOldNumber,
|
|
|
|
+ specification: this.screenForm.specification,
|
|
|
|
+ startTime: this.screenForm.date ? this.screenForm.date[0] : "",
|
|
|
|
+ supplierName: this.screenForm.supplierName,
|
|
};
|
|
};
|
|
},
|
|
},
|
|
isShowDetail() {
|
|
isShowDetail() {
|
|
@@ -281,6 +322,10 @@ export default {
|
|
return this.queryItem.hasOwnProperty("id");
|
|
return this.queryItem.hasOwnProperty("id");
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
+ created() {
|
|
|
|
+ this.getWarehouseList();
|
|
|
|
+ this.getList();
|
|
|
|
+ },
|
|
methods: {
|
|
methods: {
|
|
// 查询按钮权限
|
|
// 查询按钮权限
|
|
checkBtnRole(value) {
|
|
checkBtnRole(value) {
|
|
@@ -290,7 +335,20 @@ export default {
|
|
// return index >= 0;
|
|
// return index >= 0;
|
|
return true;
|
|
return true;
|
|
},
|
|
},
|
|
-
|
|
|
|
|
|
+ // 获取仓库列表
|
|
|
|
+ getWarehouseList() {
|
|
|
|
+ getWarehouseList({
|
|
|
|
+ pageNum: 1,
|
|
|
|
+ pageSize: -1,
|
|
|
|
+ }).then((res) => {
|
|
|
|
+ this.warehouseList = res.data.records;
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ handleUnapprove(id, billNo) {
|
|
|
|
+ setApprovalPurchaseOrderOut({ id, billNo }).then((res) => {
|
|
|
|
+ this.$successMsg("弃审成功");
|
|
|
|
+ });
|
|
|
|
+ },
|
|
// 查询列表
|
|
// 查询列表
|
|
getList() {
|
|
getList() {
|
|
this.listLoading = true;
|
|
this.listLoading = true;
|
|
@@ -298,14 +356,17 @@ export default {
|
|
const params = {
|
|
const params = {
|
|
pageNum: this.currentPage,
|
|
pageNum: this.currentPage,
|
|
pageSize: this.pageSize,
|
|
pageSize: this.pageSize,
|
|
- billNo: this.screenForm.orderNum,
|
|
|
|
- materialName: this.screenForm.chName,
|
|
|
|
- materialCode: this.screenForm.chNum,
|
|
|
|
- startTime: this.screenForm.date ? this.screenForm.date[0] : "",
|
|
|
|
|
|
+ billNo: this.screenForm.billNo,
|
|
|
|
+ correspondId: this.screenForm.correspondId.join(","),
|
|
endTime: this.screenForm.date ? this.screenForm.date[1] : "",
|
|
endTime: this.screenForm.date ? this.screenForm.date[1] : "",
|
|
- supplyName: this.screenForm.company,
|
|
|
|
|
|
+ materialName: this.screenForm.materialName,
|
|
|
|
+ materialNumber: this.screenForm.materialNumber,
|
|
|
|
+ materialOldNumber: this.screenForm.materialOldNumber,
|
|
|
|
+ specification: this.screenForm.specification,
|
|
|
|
+ startTime: this.screenForm.date ? this.screenForm.date[0] : "",
|
|
|
|
+ supplierName: this.screenForm.supplierName,
|
|
};
|
|
};
|
|
- getEnterList(params).then((res) => {
|
|
|
|
|
|
+ getPurchaseOutList(params).then((res) => {
|
|
res.data.records.forEach((item) => {
|
|
res.data.records.forEach((item) => {
|
|
item.sums1 = ["auxUnitQty"];
|
|
item.sums1 = ["auxUnitQty"];
|
|
item.sums2 = ["taxPrice", "amount", "entryTaxAmount", "allAmount"];
|
|
item.sums2 = ["taxPrice", "amount", "entryTaxAmount", "allAmount"];
|