diff --git a/src/components/BasicForm/src/BasicForm.vue b/src/components/BasicForm/src/BasicForm.vue index 1bb6b76b1..e747f5763 100644 --- a/src/components/BasicForm/src/BasicForm.vue +++ b/src/components/BasicForm/src/BasicForm.vue @@ -84,6 +84,7 @@ @inpuFocus="inpuFocus" @buttonOperationClick="buttonOperationClick" @inputStringBlur="inputStringBlur" + @inputNumberChange="inputNumberChange" />
@@ -466,7 +467,8 @@ const emit = defineEmits([ 'tableFormChange', 'buttonOperationClick', 'inputStringBlur', - 'onChange' + 'onChange', + 'inputNumberChange' ]) //普通下拉改变事件 const formSelectChange = (field, val, row) => { @@ -483,6 +485,11 @@ const tableSelectionChange = (val) => { const tableSortChange = (column, prop, order) => { emit('tableSortChange', column, prop, order) } + +// 数字输入-改变事件 +const inputNumberChange = (field, index, row, val) => { + emit('inputNumberChange', field, index, row, val) +} //下拉框回显方法 // const showSelect = (val, statusID) => { // return getDictForStatusID(val, statusID) diff --git a/src/components/Detail/src/Detail.vue b/src/components/Detail/src/Detail.vue index 992da161c..e5692ab1e 100644 --- a/src/components/Detail/src/Detail.vue +++ b/src/components/Detail/src/Detail.vue @@ -134,6 +134,7 @@ @selectChangeDetail="selectChangeDetail" :formTypeDetail="formTypeDetail" :countPlanAllList="countPlanAllList" + @onChange="detailBasicFormOnChange" />
@@ -378,6 +379,7 @@ const HeadButttondata = ref() const buttondata = ref() /** 打开弹窗 */ +const formRef = ref() const titleNameRef = ref() const titleValueRef = ref() const openDetail = async (row: any, titleName: any, titleValue: any, tableName: any) => { @@ -457,7 +459,7 @@ const openDetail = async (row: any, titleName: any, titleValue: any, tableName: } } } -defineExpose({ openDetail }) // 提供 open 方法,用于打开弹窗 +defineExpose({ openDetail, formRef }) // 提供 open 方法,用于打开弹窗 // 获取备注列表 const getRemarkList = async () => { @@ -543,7 +545,6 @@ const buttonTableClick = async (val, row) => { } } /** 添加/修改操作 */ -const formRef = ref() const openForm = async (type: string, row?: number) => { emit('detailOpenForm', type, row) formRef.value.open(type, row, masterParmas.value) @@ -581,7 +582,8 @@ const emit = defineEmits([ 'selectChangeDetail', 'detailOpenForm', 'tableFormButton', - 'openImage' + 'openImage', + 'detailBasicFormOnChange' ]) /** 删除按钮操作 */ const handleDelete = async (id: number) => { @@ -630,6 +632,14 @@ const selectChangeDetail = (field, val) => { const openImage=(item)=>{ emit('openImage', item) } +/** + * 监听改变事件 + * @param field 当前操作字段 + * @param cur 改变后值 + */ + const detailBasicFormOnChange = (field, cur) => { + emit('detailBasicFormOnChange', field, cur) +} //监视属性 watch( () => props.apiPage, diff --git a/src/components/TableForm/src/TableForm.vue b/src/components/TableForm/src/TableForm.vue index 3d365ce57..4a38c18ca 100644 --- a/src/components/TableForm/src/TableForm.vue +++ b/src/components/TableForm/src/TableForm.vue @@ -94,6 +94,7 @@ :min="headerItem?.tableForm?.min" :precision="headerItem?.tableForm?.precision" :disabled="itemIsDisabled(headerItem, row)" + @change="(e)=>{inputNumberChange(headerItem.field, $index, row, e)}" /> @@ -355,6 +356,10 @@ const initSelectOptions = (item) => { const formSelectChange = (field, val,row) => { emit('formSelectChange', field, val,row) } +// 数字输入-改变事件 +const inputNumberChange = (field, index, row, e) => { + emit('inputNumberChange', field, index, row, e) +} // 点击selection框 const tableSelectionChange = (val) => { diff --git a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptJobMain/unplannedreceiptJobMain.data.ts b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptJobMain/unplannedreceiptJobMain.data.ts index fea632e0a..17e70ea8c 100644 --- a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptJobMain/unplannedreceiptJobMain.data.ts +++ b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptJobMain/unplannedreceiptJobMain.data.ts @@ -645,6 +645,28 @@ export const UnplannedreceiptJobDetail = useCrudSchemas(reactive([ width: 150 }, }, + { + label: '单价', + field: 'singlePrice', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + } + }, + { + label: '金额', + field: 'amount', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + } + }, { label: '到库位代码', field: 'toLocationCode', diff --git a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue index c86c086a7..5740d00fc 100644 --- a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue @@ -54,6 +54,7 @@ @handleDeleteTable="handleDeleteTable" @searchTableSuccess="searchTableSuccess" @submitForm="submitForm" + @inputNumberChange="inputNumberChange" /> @@ -70,6 +71,7 @@ :Echo="Echo" @searchTableSuccessDetail="searchTableSuccessDetail" :detailValidate="detailValidate" + @detailBasicFormOnChange="qtyOnChange" /> @@ -85,6 +87,7 @@ @handleDeleteTable="handleDeleteTable" @searchTableSuccess="searchTableSuccess" @submitForm="submitFormLabel" + /> @@ -569,6 +572,17 @@ const submitFormLabel = async (formType, data) => { } } +const inputNumberChange = (field, index, row, val) => { + if(field == 'qty' || field == 'singlePrice'){ + row.amount = row.qty * row.singlePrice + } +} +const qtyOnChange = (field,val) =>{ + if(field == 'qty' || field == 'singlePrice'){ + detailRef.value.formRef.formRef.formModel.amount = detailRef.value.formRef.formRef.formModel.qty * detailRef.value.formRef.formRef.formModel.singlePrice + } +} + /** 初始化 **/ onMounted(async () => { getList() diff --git a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts index 5e8537215..8fb5e7200 100644 --- a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts +++ b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts @@ -537,6 +537,48 @@ export const UnplannedreceiptRequestDetail = useCrudSchemas(reactive { const formRef = ref() const openForm =async (type: string, row?: number) => { tableData.value = [] // 重置明细数据 + if (type == 'update') { + // 修改 tableform 属性 + PreparetoissueMain.allSchemas.formSchema.map(item => { + if(item.field == 'productionPlanNumber' || + item.field == 'workshop' || + item.field == 'prodLine' || + item.field == 'shift' || + item.field == 'team' + ){ + item.componentProps.isSearchList = false + item.componentProps.disabled = true + } + }) + } else { + // 修改 tableform 属性 + PreparetoissueMain.allSchemas.formSchema.map(item => { + if(item.field == 'productionPlanNumber' || + item.field == 'workshop' || + item.field == 'prodLine' || + item.field == 'shift' || + item.field == 'team' + ){ + item.componentProps.isSearchList = true + item.componentProps.disabled = false + } + }) + } formRef.value.open(type, row) }