diff --git a/src/views/qms/inspectionQ3/index.vue b/src/views/qms/inspectionQ3/index.vue index 3754cb665..885ee2dc0 100644 --- a/src/views/qms/inspectionQ3/index.vue +++ b/src/views/qms/inspectionQ3/index.vue @@ -55,6 +55,7 @@ :apiCreate="Q3Api.createQ3" @searchTableSuccess="searchTableSuccess" :isBusiness="false" + @onChange="onChange" /> @@ -77,6 +78,8 @@ import * as defaultButtons from '@/utils/disposition/defaultButtons' import TableHead from '@/components/TableHead/src/TableHead.vue' import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import Detail from '@/components/Detail/src/Detail.vue' +import * as ProductionlineitemApi from '@/api/wms/productionlineitem' +import * as StdcostpriceApi from '@/api/wms/stdcostprice' import { useUserStore } from '@/store/modules/user' const userStore = useUserStore() @@ -92,12 +95,43 @@ routeName.value = route.name const tableColumns = ref(Q3.allSchemas.tableColumns) // 查询页面返回 +const priceObj = ref() const searchTableSuccess = (formField, searchField, val, formRef) => { - nextTick(() => { + nextTick(async () => { const setV = {} if (formField == 'itemCode') { console.log(val) setV['uom'] = val[0]['uom'] + console.log(formRef.formModel.qty) + // let res = await ProductionlineitemApi.selectItemCodeToProductionLineCode(val[0].code) + ProductionlineitemApi.selectItemCodeToProductionLineCode(val[0].code).then((res) => { + console.log(res) + if (res?.length > 0) { + formRef.formModel.defectLocation = res[0].productionLineCode + Q3.allSchemas.formSchema.forEach(item=>{ + if (item.field == 'defectLocation') { + item.componentProps.options = res + } + }) + } + }) + const params = { + by: "ASC", + filters: [{column: "itemCode", action: "==", value: val[0].code}], + pageNo: 1, + pageSize: 500, + sort: "" + } + params.isSearch = true + StdcostpriceApi.getStdcostpricePage(params).then((res) => { + if (res.list?.length > 0) { + priceObj.value = res.list[0] + formRef.setValues({ + amount: (parseFloat(formRef.formModel.qty) * parseFloat(priceObj.value.price)).toFixed(6) + }) + } + + }) } if (formField == 'q1Number') { //Q1通知单号 @@ -113,6 +147,11 @@ const searchTableSuccess = (formField, searchField, val, formRef) => { } }) } +const onChange =(field,e)=>{ + if (field == 'qty') { + basicFormRef.value.formRef.formModel.amount = (parseFloat( basicFormRef.value.formRef.formModel.qty) * parseFloat( priceObj.value.price)).toFixed(6) +} +} // 字段设置 更新主列表字段 const updataTableColumns = (val) => { diff --git a/src/views/qms/inspectionQ3/inspectionQ3.data.ts b/src/views/qms/inspectionQ3/inspectionQ3.data.ts index db0f5fe1a..cb5d3bc6e 100644 --- a/src/views/qms/inspectionQ3/inspectionQ3.data.ts +++ b/src/views/qms/inspectionQ3/inspectionQ3.data.ts @@ -226,12 +226,19 @@ export const Q3 = useCrudSchemas( label: '缺陷位置', field: 'defectLocation', sort: 'custom', - dictType: DICT_TYPE.DEFECT_LOCATION, dictClass: 'string', isSearch: false, isTable: false, - tableForm: { - type: 'Select' + form: { + component: 'Select', + componentProps: { + options: [], + optionsAlias: { + labelField: 'productionLineName', + valueField: 'productionLineCode' + }, + filterable: true, + } } }, {