Tom Butcher fb9454d8e0 Refactor Stock Transfers and Management Components
- Adjusted width of Stock Transfers modal for better UI consistency.
- Enhanced New Stock Transfer form with default transfer name generation and improved validation handling.
- Added Product Categories to Management Sidebar and updated routing for better navigation.
- Implemented delete functionality in Host Info component.
- Improved User Info layout for mobile responsiveness and added ObjectProperty component for better data display.
- Updated FileUpload and FileList components to support minimal display mode.
- Enhanced ObjectTable with subscription filtering and improved rendering logic.
- Added new properties and filters to Stock Transfer and Product models for better data management.
2026-06-14 23:51:45 +01:00

86 lines
2.2 KiB
JavaScript

import PropTypes from 'prop-types'
import dayjs from 'dayjs'
import ObjectInfo from '../../common/ObjectInfo'
import NewObjectForm from '../../common/NewObjectForm'
import WizardView from '../../common/WizardView'
const defaultTransferName = () =>
`Transfer ${dayjs().format('YYYY-MM-DD HH:mm:ss')}`
const NewStockTransfer = ({ onOk, reset }) => {
return (
<NewObjectForm
type={'stockTransfer'}
reset={reset}
defaultValues={{
name: defaultTransferName(),
state: { type: 'draft' },
lines: []
}}
>
{({ handleSubmit, submitLoading, objectData, formValid }) => {
const steps = [
{
title: 'Required',
key: 'required',
content: (
<ObjectInfo
type='stockTransfer'
column={1}
bordered={false}
labelWidth={80}
isEditing={true}
required={true}
objectData={objectData}
/>
)
},
{
title: 'Summary',
key: 'summary',
content: (
<ObjectInfo
type='stockTransfer'
column={1}
bordered={false}
labelWidth={80}
visibleProperties={{
_id: false,
createdAt: false,
updatedAt: false,
lines: false,
_reference: false,
postedAt: false
}}
isEditing={false}
objectData={objectData}
/>
)
}
]
return (
<WizardView
steps={steps}
loading={submitLoading}
formValid={formValid}
title='New Stock Transfer'
onSubmit={async () => {
const result = await handleSubmit()
if (result) {
onOk()
}
}}
/>
)
}}
</NewObjectForm>
)
}
NewStockTransfer.propTypes = {
onOk: PropTypes.func.isRequired,
reset: PropTypes.bool
}
export default NewStockTransfer