| | |
| | | import isEqual from 'lodash/isEqual' |
| | | import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' |
| | | import { cloneDeep } from 'lodash' |
| | | import { getAreaAreaDataList } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' |
| | | import { |
| | | FILTER_MODE_OPTIONS_STRING, |
| | | FILTER_MODE_OPTIONS_NUM, |
| | | FILTER_MODE_OPTIONS_BOOL, |
| | | } from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions' |
| | | |
| | | export const useWmsMaterialStockQueryDrawer = (props: any, ctx?: any) => { |
| | | const wmsMaterialStockDrawer = injectModel<WmsMaterialStockDrawer>( |
| | |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入物料名称', |
| | | highSelectAttrs: { |
| | | prop: 'materialName_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '容器编号', |
| | |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入物料编号', |
| | | highSelectAttrs: { |
| | | prop: 'materialNo_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '库存数量', |
| | |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入物料批次', |
| | | highSelectAttrs: { |
| | | prop: 'materialBatch_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '供应商编号', |
| | |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入型号', |
| | | highSelectAttrs: { |
| | | prop: 'materialModel_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | { |
| | | label: '库位编号', |
| | |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入库位编号', |
| | | highSelectAttrs: { |
| | | prop: 'placeNo_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | { |
| | | label: '库位状态;', |
| | | label: '库位状态', |
| | | prop: 'placeStatus', |
| | | el: 'select', |
| | | clearable: true, |
| | | option: [], |
| | | //disabled: disabled, |
| | | placeholder: '请输入库位状态;', |
| | | highSelectAttrs: { |
| | | prop: 'placeStatus_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_BOOL, |
| | | }, |
| | | }, |
| | | { |
| | | label: '库位类型', |
| | |
| | | option: [], |
| | | //disabled: disabled, |
| | | placeholder: '请输入库位类型', |
| | | highSelectAttrs: { |
| | | prop: 'storageTypeNo_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_BOOL, |
| | | }, |
| | | }, |
| | | { |
| | | label: '区域编号', |
| | | prop: 'areaCode', |
| | | el: 'input', |
| | | el: 'select', |
| | | option: [], |
| | | //disabled: disabled, |
| | | placeholder: '请输入区域编号', |
| | | highSelectAttrs: { |
| | | prop: 'areaCode_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_STRING, |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '库区名称', |
| | |
| | | option: [], |
| | | //disabled: disabled, |
| | | placeholder: '请输入是否锁定', |
| | | highSelectAttrs: { |
| | | prop: 'isLock_FilterMode', |
| | | el: 'select', |
| | | placeholder: '请选择', |
| | | options: FILTER_MODE_OPTIONS_BOOL, |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '是否空托(2:否,1:是)', |
| | |
| | | // //disabled: disabled, |
| | | // placeholder: '请输入是否空托(2:否,1:是)', |
| | | // }, |
| | | { |
| | | label: '入库时间', |
| | | prop: 'inStockTime', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(dateTimePickerRange, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | //disabled: disabled, |
| | | placeholder: '请输入入库时间', |
| | | }, |
| | | { |
| | | label: '备注', |
| | | prop: 'remark', |
| | | el: 'input', |
| | | //disabled: disabled, |
| | | placeholder: '请输入备注', |
| | | }, |
| | | // { |
| | | // label: '入库时间', |
| | | // prop: 'inStockTime', |
| | | // el: (props: any, { attrs }: SetupContext) => { |
| | | // return h(dateTimePickerRange, { |
| | | // ...props, |
| | | // clearable: true, |
| | | // ...attrs, |
| | | // }) |
| | | // }, |
| | | // width: '100%', |
| | | // //disabled: disabled, |
| | | // placeholder: '请输入入库时间', |
| | | // }, |
| | | // { |
| | | // label: '备注', |
| | | // prop: 'remark', |
| | | // el: 'input', |
| | | // //disabled: disabled, |
| | | // placeholder: '请输入备注', |
| | | // }, |
| | | // { |
| | | // label: '冗余字段1 - 预留扩展用途', |
| | | // prop: 'redundantField1', |
| | |
| | | } |
| | | const commonGetFormData = () => { |
| | | const data = { |
| | | materialId: formData.value.materialId || '', |
| | | materialName: formData.value.materialName || '', |
| | | materialName_FilterMode: formData.value.materialName_FilterMode || '', |
| | | containerNo: formData.value.containerNo || '', |
| | | containerNo_FilterMode: formData.value.containerNo_FilterMode || '', |
| | | containerStatus: formData.value.containerStatus || '', |
| | | containerStatus_FilterMode: |
| | | formData.value.containerStatus_FilterMode || '', |
| | | containerType: formData.value.containerType || '', |
| | | containerType_FilterMode: formData.value.containerType_FilterMode || '', |
| | | materialNo: formData.value.materialNo || '', |
| | | materialNo_FilterMode: formData.value.materialNo_FilterMode || '', |
| | | stockNumber: formData.value.stockNumber || '', |
| | | materialBatch: formData.value.materialBatch || '', |
| | | stockNumber_FilterMode: formData.value.stockNumber_FilterMode || '', |
| | | supplierCode: formData.value.supplierCode || '', |
| | | supplierCode_FilterMode: formData.value.supplierCode_FilterMode || '', |
| | | materialModel: formData.value.materialModel || '', |
| | | materialModel_FilterMode: formData.value.materialModel_FilterMode || '', |
| | | placeNo: formData.value.placeNo || '', |
| | | placeNo_FilterMode: formData.value.placeNo_FilterMode || '', |
| | | placeStatus: formData.value.placeStatus || '', |
| | | storageTypeNo: formData.value.storageTypeNo || 1, |
| | | placeStatus_FilterMode: formData.value.placeStatus_FilterMode || '', |
| | | storageTypeNo: formData.value.storageTypeNo || '', |
| | | storageTypeNo_FilterMode: formData.value.storageTypeNo_FilterMode || '', |
| | | areaCode: formData.value.areaCode || '', |
| | | areaCode_FilterMode: formData.value.areaCode_FilterMode || '', |
| | | areaName: formData.value.areaName || '', |
| | | checkStatus: formData.value.checkStatus || '', |
| | | areaName_FilterMode: formData.value.areaName_FilterMode || '', |
| | | isLock: formData.value.isLock || '', |
| | | emptyContainer: formData.value.emptyContainer || '', |
| | | isLock_FilterMode: formData.value.isLock_FilterMode || '', |
| | | inStockTime: formData.value.inStockTime || '', |
| | | remark: formData.value.remark || '', |
| | | redundantField1: formData.value.redundantField1 || '', |
| | | redundantField2: formData.value.redundantField2 || '', |
| | | redundantField3: formData.value.redundantField3 || '', |
| | | remark_FilterMode: formData.value.remark_FilterMode || '', |
| | | creationTime: formData.value.creationTime || '', |
| | | lastModificationTime: formData.value.lastModificationTime || '', |
| | | } |
| | | return data |
| | | } |
| | |
| | | * 重置查询 |
| | | */ |
| | | const onReset = async () => { |
| | | onResetForHighSelect() //重置公共select查询 |
| | | formData.value = {} |
| | | formData.value.materialId = '' |
| | | formData.value.materialName = '' |
| | |
| | | })) |
| | | } |
| | | } |
| | | const updateFormAreaOptions = (propName: string, enumData: any[]) => { |
| | | const item = formItems.find((item) => item.prop === propName) |
| | | if (item && enumData) { |
| | | item.options = enumData.map((item) => ({ |
| | | label: item.areaName, |
| | | value: item.areaNo, |
| | | })) |
| | | } |
| | | } |
| | | /** |
| | | * 通用查询枚举 |
| | | */ |
| | |
| | | EnumName: 'YesNoEnum', |
| | | }) |
| | | updateFormItemOptions('emptyContainer', yesNoEnumEnum2) |
| | | const areaList = await getAreaAreaDataList() |
| | | updateFormAreaOptions('areaCode', areaList) |
| | | } |
| | | commonQueryEnumForFrom() |
| | | formData.value.storageTypeNo = 1 |
| | |
| | | updateCheckData() |
| | | } |
| | | |
| | | const onResetForHighSelect = async () => { |
| | | formData.value.materialName_FilterMode = 1 |
| | | formData.value.containerNo_FilterMode = 1 |
| | | formData.value.containerStatus_FilterMode = 2 |
| | | formData.value.containerType_FilterMode = 2 |
| | | formData.value.materialNo_FilterMode = 1 |
| | | formData.value.stockNumber_FilterMode = 2 |
| | | formData.value.materialBatch_FilterMode = 1 |
| | | formData.value.supplierCode_FilterMode = 1 |
| | | formData.value.materialModel_FilterMode = 1 |
| | | formData.value.placeNo_FilterMode = 1 |
| | | formData.value.placeStatus_FilterMode = 2 |
| | | formData.value.storageTypeNo_FilterMode = 2 |
| | | formData.value.areaCode_FilterMode = 1 |
| | | formData.value.areaName_FilterMode = 1 |
| | | formData.value.checkStatus_FilterMode = 2 |
| | | formData.value.isLock_FilterMode = 2 |
| | | formData.value.emptyContainer_FilterMode = 2 |
| | | formData.value.remark_FilterMode = 1 |
| | | formData.value.redundantField1_FilterMode = 1 |
| | | formData.value.redundantField2_FilterMode = 1 |
| | | formData.value.redundantField3_FilterMode = 1 |
| | | } |
| | | |
| | | commonQueryEnumForFrom() |
| | | onResetForHighSelect() //重置公共select查询 |
| | | |
| | | /** |
| | | * 弹窗打开获取详情 |
| | | */ |
| | | watch(() => current.value, onOpen) |
| | | |
| | | return { |