feat: 家具初版

This commit is contained in:
砂糖
2025-09-03 11:55:00 +08:00
parent 623fa846a4
commit 82faee4f7c
44 changed files with 1824 additions and 943 deletions

View File

@@ -2,26 +2,27 @@
<div>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" size="mini" :disabled="!canEdit"
<el-button type="primary" plain icon="Plus" size="small" :disabled="!canEdit"
@click="handleAdd">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" size="mini" :disabled="single || !canEdit"
<el-button type="success" plain icon="Edit" size="small" :disabled="single || !canEdit"
@click="handleUpdate">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" size="mini" :disabled="multiple || !canEdit"
<el-button type="danger" plain icon="Delete" size="small" :disabled="multiple || !canEdit"
@click="handleDelete">删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" size="mini" @click="handleExport">导出</el-button>
<el-button type="warning" plain icon="Download" size="small" @click="handleExport">导出</el-button>
</el-col>
</el-row>
<KLPTable v-loading="loading" :data="orderDetailList">
<el-table v-loading="loading" :data="orderDetailList">
<el-table-column label="订单明细ID" align="center" prop="detailId" v-if="true"/>
<el-table-column label="产品" align="center">
<template slot-scope="scope">
<ProductInfo :product-id="scope.row.productId">
<template #default="scope">
<ProductInfo :productId="scope.row.productId">
<template #default="{ product }">
{{ product.productName }}<span v-if="product.productCode">({{ product.productCode }})</span>
</template>
@@ -29,7 +30,7 @@
</template>
</el-table-column>
<el-table-column label="BOM" align="center">
<template slot-scope="scope">
<template #default="scope">
<BomInfoMini item-type="product" :item-id="scope.row.productId" />
</template>
</el-table-column>
@@ -39,14 +40,14 @@
<el-table-column label="无税单价" align="center" prop="noTaxPrice" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" width="200">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="Edit"
<template #default="scope">
<el-button size="small" type="text" icon="Edit"
@click="handleUpdate(scope.row)">修改</el-button>
<el-button size="mini" type="text" icon="Delete"
<el-button size="small" type="text" icon="Delete"
@click="handleDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
</KLPTable>
</el-table>
<!-- 添加或修改订单明细对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
@@ -58,7 +59,7 @@
<el-input v-model="form.quantity" placeholder="请输入产品数量" />
</el-form-item>
<el-form-item label="单位" prop="unit">
<el-input v-model="form.unit" placeholder="单位" :disabled="true" />
<el-input v-model="form.unit" placeholder="单位" />
</el-form-item>
<el-form-item label="含税单价" prop="taxPrice">
<el-input-number :controls=false controls-position="right" v-model="form.taxPrice" placeholder="请输入含税单价" />
@@ -82,7 +83,7 @@
<script>
import { listOrderDetail, getOrderDetail, delOrderDetail, addOrderDetail, updateOrderDetail } from "@/api/wms/orderDetail";
import { getOrder } from "@/api/wms/order";
import ProductSelect from '@/components/Selector/ProductSelect';
import ProductSelect from '@/components/ProductSelect';
import { EOrderStatus } from "@/utils/enums";
import ProductInfo from '@/components/Renderer/ProductInfo.vue';
import BomInfoMini from '@/components/Renderer/BomInfoMini.vue';
@@ -132,9 +133,6 @@ export default {
orderId: [
{ required: true, message: "订单ID不能为空", trigger: "blur" }
],
productId: [
{ required: true, message: "产品ID不能为空", trigger: "blur" }
],
quantity: [
{ required: true, message: "产品数量不能为空", trigger: "blur" },
{ pattern: /^[1-9]\d*$/, message: "产品数量必须为正整数", trigger: "blur" }
@@ -234,6 +232,7 @@ export default {
});
},
onProductChange(product) {
console.log(product, '切换产品');
if (product) {
this.form.unit = product.unit;
} else {