|
@@ -269,7 +269,7 @@ export const orderFormOption = {
|
|
|
* 根据编辑模式动态调整表单配置
|
|
|
* @description 基于业务逻辑动态调整表单字段的显示和编辑状态
|
|
|
* @param {boolean} [isEdit=false] - 是否为编辑模式
|
|
|
- * @returns {AvueFormOption<OrderFormModel>} 调整后的表单配置对象
|
|
|
+ * @returns {AvueFormOption} 调整后的表单配置对象
|
|
|
* @throws {Error} 当配置对象结构异常时抛出错误
|
|
|
* @example
|
|
|
* // 获取新增模式的表单配置
|
|
@@ -281,7 +281,7 @@ export const orderFormOption = {
|
|
|
export function getFormOption(isEdit = false) {
|
|
|
try {
|
|
|
// 深拷贝配置对象,避免修改原始配置
|
|
|
- /** @type {AvueFormOption<OrderFormModel>} */
|
|
|
+ /** @type {AvueFormOption} */
|
|
|
const option = JSON.parse(JSON.stringify(orderFormOption))
|
|
|
|
|
|
if (isEdit) {
|
|
@@ -306,18 +306,18 @@ export function getFormOption(isEdit = false) {
|
|
|
*/
|
|
|
function adjustFieldsForEditMode(option) {
|
|
|
// 编辑模式下,订单编码不可编辑
|
|
|
- const basicGroup = option.group.find(group => group.prop === 'basic')
|
|
|
+ const basicGroup = option?.group?.find(group => group.prop === 'basic')
|
|
|
if (basicGroup) {
|
|
|
- const orderCodeField = basicGroup.column.find(column => column.prop === 'orderCode')
|
|
|
+ const orderCodeField = basicGroup?.column?.find(column => column.prop === 'orderCode')
|
|
|
if (orderCodeField) {
|
|
|
orderCodeField.disabled = true
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// 编辑模式下显示订单状态字段
|
|
|
- const otherGroup = option.group.find(group => group.prop === 'other')
|
|
|
+ const otherGroup = option?.group?.find(group => group.prop === 'other')
|
|
|
if (otherGroup) {
|
|
|
- const statusField = otherGroup.column.find(column => column.prop === 'status')
|
|
|
+ const statusField = otherGroup?.column?.find(column => column.prop === 'status')
|
|
|
if (statusField) {
|
|
|
statusField.display = true
|
|
|
}
|
|
@@ -332,9 +332,9 @@ function adjustFieldsForEditMode(option) {
|
|
|
*/
|
|
|
function adjustFieldsForCreateMode(option) {
|
|
|
// 新增模式下,隐藏订单编码字段
|
|
|
- const basicGroup = option.group.find(group => group.prop === 'basic')
|
|
|
+ const basicGroup = option?.group?.find(group => group.prop === 'basic')
|
|
|
if (basicGroup) {
|
|
|
- const orderCodeField = basicGroup.column.find(column => column.prop === 'orderCode')
|
|
|
+ const orderCodeField = basicGroup?.column?.find(column => column.prop === 'orderCode')
|
|
|
if (orderCodeField) {
|
|
|
orderCodeField.display = false
|
|
|
}
|