import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import * as ItembasicApi from '@/api/wms/itembasic' import { Itembasic } from '@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data' import * as LocationApi from '@/api/wms/location' import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data' import * as PackageunitApi from '@/api/wms/packageunit' import { Packageunit } from '@/views/wms/basicDataManage/itemManage/packageunit/packageunit.data' // 表单校验 export const CallmaterialsRules = reactive({ itemCode: [required], itemName: [required], barcodeString: [required] }) export const Callmaterials = useCrudSchemas(reactive([ { label: '物料代码', field: 'itemCode', sort: 'custom', table: { width: 150, fixed: 'left' }, isSearch: true, form: { // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '请选择物料代码', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '物料信息', // 查询弹窗标题 searchAllSchemas: Itembasic.allSchemas, // 查询弹窗所需类 searchPage: ItembasicApi.getItembasicPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', isMainValue: false }] } } }, { label: '库位', field: 'location', sort: 'custom', table: { width: 150 }, form: { // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '请选择库位代码', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '库位信息', // 查询弹窗标题 searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 } }, isSearch: true }, { label: '数量', field: 'qty', sort: 'custom', table: { width: 120 }, form: { component: 'InputNumber', componentProps: { style: {width:'100%'}, min: 0, precision: 6 } } }, { label: '计量单位', field: 'uom', sort: 'custom', dictType: DICT_TYPE.UOM, dictClass: 'string', table: { width: 120 }, }, { label: '批次', field: 'batch', sort: 'custom', isSearch: true, table: { width: 120 } }, { label: '包装规格', field: 'packUnit', sort: 'custom', table: { width: 150 }, form: { // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '请选择包装规格代码', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '包装规格信息', // 查询弹窗标题 searchAllSchemas: Packageunit.allSchemas, // 查询弹窗所需类 searchPage: PackageunitApi.getPackageunitPage, // 查询弹窗所需分页方法 } } }, { label: '是否确认接收', field: 'isRecive', sort: 'custom', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', isTable: true, sort: 'custom', table: { width: 150 }, form: { component: 'Switch', value: 'FALSE', componentProps: { inactiveValue: 'FALSE', activeValue: 'TRUE' } } }, { label: '创建者id', field: 'creator', sort: 'custom', isForm: false, table: { width: 180, } }, { label: '创建时间', field: 'createTime', sort: 'custom', formatter: dateFormatter, isForm: false, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' }, table: { width: 180, } }, { label: '最后更新者id', field: 'updater', sort: 'custom', isForm: false, table: { width: 180, } }, { label: '最后更新时间', field: 'updateTime', sort: 'custom', formatter: dateFormatter, isForm: false, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' }, table: { width: 180, } }, { label: '操作', field: 'action', isForm: false, table: { width: 180, fixed: 'right' } } ]))