|
|
|
import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
|
|
|
|
import { dateFormatter } from '@/utils/formatTime'
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @returns {Array} 库存转移日志
|
|
|
|
*/
|
|
|
|
export const Transferlog = useCrudSchemas(reactive<CrudSchema[]>([
|
|
|
|
{
|
|
|
|
label: '单据号',
|
|
|
|
field: 'recordNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150,
|
|
|
|
fixed: 'left'
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '日志号',
|
|
|
|
field: 'number',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '事务类型',
|
|
|
|
field: 'transactionType',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '操作员',
|
|
|
|
field: 'worker',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '业务类型',
|
|
|
|
field: 'businessType',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '物品代码',
|
|
|
|
field: 'itemCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
isSearch: true,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '数量',
|
|
|
|
field: 'qty',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
form: {
|
|
|
|
component: 'InputNumber',
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '计量单位',
|
|
|
|
field: 'uom',
|
|
|
|
dictType: DICT_TYPE.UOM,
|
|
|
|
dictClass: 'string',
|
|
|
|
isTable: true,
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
isSearch: true,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '替代批次',
|
|
|
|
field: 'altBatch',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到货日期',
|
|
|
|
field: 'arriveDate',
|
|
|
|
isTable: true,
|
|
|
|
formatter: dateFormatter,
|
|
|
|
detail: {
|
|
|
|
dateFormat: 'YYYY-MM-DD HH:mm:ss'
|
|
|
|
},
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
form: {
|
|
|
|
component: 'DatePicker',
|
|
|
|
componentProps: {
|
|
|
|
type: 'datetime',
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '生产日期',
|
|
|
|
field: 'produceDate',
|
|
|
|
isTable: true,
|
|
|
|
formatter: dateFormatter,
|
|
|
|
detail: {
|
|
|
|
dateFormat: 'YYYY-MM-DD HH:mm:ss'
|
|
|
|
},
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
form: {
|
|
|
|
component: 'DatePicker',
|
|
|
|
componentProps: {
|
|
|
|
type: 'datetime',
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '生效时间',
|
|
|
|
field: 'activeTime',
|
|
|
|
isTable: true,
|
|
|
|
formatter: dateFormatter,
|
|
|
|
detail: {
|
|
|
|
dateFormat: 'YYYY-MM-DD HH:mm:ss'
|
|
|
|
},
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '失效日期',
|
|
|
|
field: 'expireDate',
|
|
|
|
isTable: true,
|
|
|
|
formatter: dateFormatter,
|
|
|
|
detail: {
|
|
|
|
dateFormat: 'YYYY-MM-DD HH:mm:ss'
|
|
|
|
},
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
form: {
|
|
|
|
component: 'DatePicker',
|
|
|
|
componentProps: {
|
|
|
|
type: 'datetime',
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从事务号',
|
|
|
|
field: 'fomTransactionNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从包装号',
|
|
|
|
field: 'fromPackingNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从批次',
|
|
|
|
field: 'fromBatch',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从库存状态',
|
|
|
|
field: 'fromInventoryStatus',
|
|
|
|
dictType: DICT_TYPE.INVENTORY_STATUS,
|
|
|
|
dictClass: 'string',
|
|
|
|
isTable: true,
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
isSearch: true,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从器具号',
|
|
|
|
field: 'fromContainerNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从库位代码',
|
|
|
|
field: 'fromLocationCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从仓库代码',
|
|
|
|
field: 'fromWarehouseCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从库区代码',
|
|
|
|
field: 'fromAreaCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从库位组代码',
|
|
|
|
field: 'fromLocationGroupCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从ERP库位代码',
|
|
|
|
field: 'fromErpLocationCode',
|
|
|
|
dictType: DICT_TYPE.ERP_LOCATION,
|
|
|
|
dictClass: 'string',
|
|
|
|
isTable: true,
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '从货主代码',
|
|
|
|
field: 'fromOwnerCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到事务号',
|
|
|
|
field: 'toTransactionNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到包装号',
|
|
|
|
field: 'toPackingNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到批次',
|
|
|
|
field: 'toBatch',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到库存状态',
|
|
|
|
field: 'toInventoryStatus',
|
|
|
|
dictType: DICT_TYPE.INVENTORY_STATUS,
|
|
|
|
dictClass: 'string',
|
|
|
|
isTable: true,
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
isSearch: true,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到器具号',
|
|
|
|
field: 'toContainerNumber',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到库位代码',
|
|
|
|
field: 'toLocationCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到仓库代码',
|
|
|
|
field: 'toWarehouseCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到库区代码',
|
|
|
|
field: 'toAreaCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到库位组代码',
|
|
|
|
field: 'toLocationGroupCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到ERP库位代码',
|
|
|
|
field: 'toErpLocationCode',
|
|
|
|
dictType: DICT_TYPE.ERP_LOCATION,
|
|
|
|
dictClass: 'string',
|
|
|
|
isTable: true,
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: '到货主代码',
|
|
|
|
field: 'toOwnerCode',
|
|
|
|
sort: 'custom',
|
|
|
|
table: {
|
|
|
|
width: 150
|
|
|
|
},
|
|
|
|
},
|
|
|
|
]))
|
|
|
|
|
|
|
|
// 表单校验
|
|
|
|
export const TransferlogRules = reactive({
|
|
|
|
number: [
|
|
|
|
{ required: true, message: '请输入日志号', trigger: 'blur' }
|
|
|
|
],
|
|
|
|
transactionType: [
|
|
|
|
{ required: true, message: '请选择事务类型', trigger: 'change' }
|
|
|
|
],
|
|
|
|
worker: [
|
|
|
|
{ required: true, message: '请选择操作员', trigger: 'change' }
|
|
|
|
],
|
|
|
|
businessType: [
|
|
|
|
{ required: true, message: '请选择业务类型', trigger: 'change' }
|
|
|
|
],
|
|
|
|
activeTime: [
|
|
|
|
{ required: true, message: '请选择生效时间', trigger: 'change' }
|
|
|
|
],
|
|
|
|
itemCode: [
|
|
|
|
{ required: true, message: '请选择物品代码', trigger: 'change' }
|
|
|
|
],
|
|
|
|
})
|