feat: 合同管理和供应商管理

This commit is contained in:
砂糖
2025-08-12 13:37:21 +08:00
parent b2df5b517e
commit e454a245b6
7 changed files with 727 additions and 3 deletions

View File

@@ -71,6 +71,8 @@
</template>
</el-table-column>
<el-table-column label="负责人" align="center" prop="owner" />
<el-table-column label="供应商" align="center" prop="supplierName" />
<el-table-column label="合同编号" align="center" prop="contractNo" />
<el-table-column label="计划采购数量" align="center" prop="quantity" />
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="状态" align="center" prop="status">
@@ -138,7 +140,7 @@
</el-table>
<pagination
v-show="total>0"
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@@ -154,6 +156,16 @@
<el-form-item label="负责人" prop="owner">
<el-input v-model="form.owner" placeholder="请输入负责人" />
</el-form-item>
<el-form-item label="供应商" prop="supplierId">
<el-select filterable v-model="form.supplierId" placeholder="请选择供应商">
<el-option v-for="item in vendorList" :key="item.supplierId" :label="item.name" :value="item.supplierId" />
</el-select>
</el-form-item>
<el-form-item label="合同" prop="contractId">
<el-select filterable v-model="form.contractId" placeholder="请选择合同">
<el-option v-for="item in contractList" :key="item.contractId" :label="item.contractNo" :value="item.contractId" />
</el-select>
</el-form-item>
<el-form-item label="采购数量" prop="quantity">
<el-input v-model="form.quantity" placeholder="请输入计划采购数量" />
</el-form-item>
@@ -185,6 +197,8 @@
<script>
import { listPurchasePlanDetail, getPurchasePlanDetail, delPurchasePlanDetail, addPurchasePlanDetail, updatePurchasePlanDetail } from "@/api/wms/purchasePlanDetail";
import { listSupplier } from "@/api/wms/supplier";
import { listContract } from "@/api/wms/contract";
import { EPurchaseDetailStatus } from "@/utils/enums";
import StockInDialog from "./stockin.vue";
import RawMaterialSelect from '@/components/KLPService/RawMaterialSelect';
@@ -267,7 +281,10 @@ export default {
stockInVisible: false,
selectedArrivalItems: [],
uploadQualityCertificateOpen: false,
uploadQualityCertificateInfo: undefined
uploadQualityCertificateInfo: undefined,
vendorList: [],
contractList: []
};
},
computed: {
@@ -278,6 +295,8 @@ export default {
},
created() {
this.getList();
this.getVendorList();
this.getContractList();
},
watch: {
planId: {
@@ -291,6 +310,16 @@ export default {
}
},
methods: {
getVendorList() {
listSupplier().then(response => {
this.vendorList = response.rows;
});
},
getContractList() {
listContract({ type: 'purchase' }).then(response => {
this.contractList = response.rows;
});
},
/** 查询采购计划明细列表 */
getList() {
this.loading = true;