✨ feat(mes): 新增采购订单号字段及相关逻辑处理
parent
98a227a609
commit
63b212c514
|
|
@ -7,7 +7,7 @@
|
||||||
<el-table-column label="库位名称" align="center" prop="areaName" min-width="100" />
|
<el-table-column label="库位名称" align="center" prop="areaName" min-width="100" />
|
||||||
<el-table-column label="数量" align="center" prop="quantity" width="100" />
|
<el-table-column label="数量" align="center" prop="quantity" width="100" />
|
||||||
<el-table-column
|
<el-table-column
|
||||||
v-if="props.formType === 'stock'"
|
v-if="isStock"
|
||||||
label="操作"
|
label="操作"
|
||||||
align="center"
|
align="center"
|
||||||
width="120"
|
width="120"
|
||||||
|
|
@ -44,6 +44,7 @@ const message = useMessage() // 消息弹窗
|
||||||
|
|
||||||
const loading = ref(false) // 列表的加载中
|
const loading = ref(false) // 列表的加载中
|
||||||
const list = ref<WmItemReceiptDetailVO[]>([]) // 明细列表
|
const list = ref<WmItemReceiptDetailVO[]>([]) // 明细列表
|
||||||
|
const isStock = computed(() => props.formType === 'stock') // 是否为上架模式
|
||||||
|
|
||||||
/** 查询明细列表 */
|
/** 查询明细列表 */
|
||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,15 @@
|
||||||
<MdVendorSelect v-model="formData.vendorId" :disabled="isHeaderReadonly" />
|
<MdVendorSelect v-model="formData.vendorId" :disabled="isHeaderReadonly" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="采购订单号" prop="purchaseOrderCode">
|
||||||
|
<el-input
|
||||||
|
v-model="formData.purchaseOrderCode"
|
||||||
|
placeholder="请输入采购订单号"
|
||||||
|
:disabled="isHeaderReadonly"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
|
|
@ -88,7 +97,7 @@
|
||||||
保 存
|
保 存
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="formType === 'update' && formData.status === MesWmItemReceiptStatusEnum.PREPARE"
|
v-if="isEditable && formData.status === MesWmItemReceiptStatusEnum.PREPARE"
|
||||||
@click="handleSubmit"
|
@click="handleSubmit"
|
||||||
type="warning"
|
type="warning"
|
||||||
:disabled="formLoading"
|
:disabled="formLoading"
|
||||||
|
|
@ -99,7 +108,7 @@
|
||||||
执行上架
|
执行上架
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="formData.status === MesWmItemReceiptStatusEnum.APPROVED"
|
v-if="isFinish"
|
||||||
@click="handleFinish"
|
@click="handleFinish"
|
||||||
type="success"
|
type="success"
|
||||||
:disabled="formLoading"
|
:disabled="formLoading"
|
||||||
|
|
@ -129,7 +138,7 @@ const message = useMessage() // 消息弹窗
|
||||||
|
|
||||||
const dialogVisible = ref(false) // 弹窗的是否展示
|
const dialogVisible = ref(false) // 弹窗的是否展示
|
||||||
const formLoading = ref(false) // 表单的加载中
|
const formLoading = ref(false) // 表单的加载中
|
||||||
const formType = ref<string>('create') // 表单的类型:create / update / stock / detail
|
const formType = ref<string>('create') // 表单的类型:create / update / stock / finish / detail
|
||||||
const formData = ref({
|
const formData = ref({
|
||||||
id: undefined as number | undefined,
|
id: undefined as number | undefined,
|
||||||
code: undefined,
|
code: undefined,
|
||||||
|
|
@ -138,6 +147,7 @@ const formData = ref({
|
||||||
vendorId: undefined,
|
vendorId: undefined,
|
||||||
noticeId: undefined,
|
noticeId: undefined,
|
||||||
iqcId: undefined,
|
iqcId: undefined,
|
||||||
|
purchaseOrderCode: undefined,
|
||||||
receiptDate: undefined,
|
receiptDate: undefined,
|
||||||
remark: undefined
|
remark: undefined
|
||||||
})
|
})
|
||||||
|
|
@ -149,13 +159,15 @@ const formRules = reactive({
|
||||||
const formRef = ref() // 表单 Ref
|
const formRef = ref() // 表单 Ref
|
||||||
const isEditable = computed(() => ['create', 'update'].includes(formType.value)) // 是否为编辑模式
|
const isEditable = computed(() => ['create', 'update'].includes(formType.value)) // 是否为编辑模式
|
||||||
const isStock = computed(() => formType.value === 'stock') // 是否为上架模式
|
const isStock = computed(() => formType.value === 'stock') // 是否为上架模式
|
||||||
const isDetail = computed(() => formType.value === 'detail') // 是否为详情模式
|
const isFinish = computed(() => formType.value === 'finish') // 是否为执行入库模式
|
||||||
const isHeaderReadonly = computed(() => ['stock', 'detail'].includes(formType.value)) // 是否只读
|
const isDetail = computed(() => ['detail', 'finish'].includes(formType.value)) // 是否为详情模式
|
||||||
|
const isHeaderReadonly = computed(() => ['stock', 'detail', 'finish'].includes(formType.value)) // 是否只读
|
||||||
const dialogTitle = computed(() => {
|
const dialogTitle = computed(() => {
|
||||||
const titles = {
|
const titles = {
|
||||||
create: '新增采购入库单',
|
create: '新增采购入库单',
|
||||||
update: '编辑采购入库单',
|
update: '编辑采购入库单',
|
||||||
stock: '执行上架',
|
stock: '执行上架',
|
||||||
|
finish: '执行入库',
|
||||||
detail: '采购入库单详情'
|
detail: '采购入库单详情'
|
||||||
}
|
}
|
||||||
return titles[formType.value] || formType.value
|
return titles[formType.value] || formType.value
|
||||||
|
|
@ -173,6 +185,7 @@ const generateCode = async () => {
|
||||||
const handleNoticeChange = (notice: any) => {
|
const handleNoticeChange = (notice: any) => {
|
||||||
if (notice) {
|
if (notice) {
|
||||||
formData.value.vendorId = notice.vendorId
|
formData.value.vendorId = notice.vendorId
|
||||||
|
formData.value.purchaseOrderCode = notice.purchaseOrderCode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -286,6 +299,7 @@ const resetForm = () => {
|
||||||
vendorId: undefined,
|
vendorId: undefined,
|
||||||
noticeId: undefined,
|
noticeId: undefined,
|
||||||
iqcId: undefined,
|
iqcId: undefined,
|
||||||
|
purchaseOrderCode: undefined,
|
||||||
receiptDate: undefined,
|
receiptDate: undefined,
|
||||||
remark: undefined
|
remark: undefined
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -126,8 +126,8 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="批号" prop="lotNumber">
|
<el-form-item label="生产批号" prop="lotNumber">
|
||||||
<el-input v-model="formData.lotNumber" placeholder="请输入批号" />
|
<el-input v-model="formData.lotNumber" placeholder="请输入生产批号" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
|
|
|
||||||
|
|
@ -118,6 +118,16 @@
|
||||||
>
|
>
|
||||||
执行上架
|
执行上架
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<!-- 待执行入库:执行入库、取消 -->
|
||||||
|
<el-button
|
||||||
|
link
|
||||||
|
type="success"
|
||||||
|
@click="openForm('finish', scope.row.id)"
|
||||||
|
v-hasPermi="['mes:wm-item-receipt:finish']"
|
||||||
|
v-if="scope.row.status === MesWmItemReceiptStatusEnum.APPROVED"
|
||||||
|
>
|
||||||
|
执行入库
|
||||||
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
link
|
link
|
||||||
type="danger"
|
type="danger"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue