data.ts 4.74 KB
import {FormSchema as BFormSchema, useComponentRegister} from "../../../../components/Form";
import {useI18n} from "../../../../hooks/web/useI18n";
const { t } = useI18n();
import { CategoryTreeSelect } from '../../../common/CategoryTreeSelect';
import { OrgTreeSelect } from '../../../common/OrgTreeSelect';
useComponentRegister('OrgTreeSelect', OrgTreeSelect);
useComponentRegister('CategoryTreeSelect', CategoryTreeSelect);
const statusOptions = [
  { label: t('equipment.ledger.NORMAL'), value: 'NORMAL' },
  { label: t('equipment.ledger.FAULT'), value: 'FAULT' },
  { label: t('equipment.ledger.SCRAP'), value: 'SCRAP' },
];
export const formSchema: BFormSchema[] = [
  {
    field: 'code',
    label: t('equipment.ledger.nameCode'),
    component: 'Input',
    colProps: { span: 24 },
    required: true,
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'name',
    label: t('equipment.ledger.deviceName'),
    component: 'Input',
    colProps: { span: 24 },
    required: true,
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'categoryId',
    label: t('equipment.category.categoryText'),
    colProps: { span: 24 },
    component: 'CategoryTreeSelect',
    required: true,
  },
  {
    field: 'status',
    component: 'Select',
    label: t('equipment.ledger.status'),
    required: true,
    colProps: { span: 24 },
    defaultValue: 'NORMAL',
    componentProps: {
      options: statusOptions,
    },
  },
  {
    field: 'org',
    component: 'OrgTreeSelect',
    label: '负责人组织',
    required: true,
    colProps: { span: 24 },
    componentProps: {
      // 添加 change 事件
      onChange: (value: string) => {
        // 这里需要触发加载人员数据的逻辑
        console.log(value,'value')
      },
    },
  },
  {
    field: 'directorId',
    component: 'Select',
    label: '负责人',
    required: true,
    colProps: { span: 24 },
    componentProps: {
      // 动态加载的选项
      options: [], // 初始为空,后续动态加载
    },
  },
  {
    field: 'isOnline',
    component: 'Select',
    label: '是否联网',
    required: true,
    colProps: { span: 24 },
    componentProps: {
      options: [
        {
          label: '是',
          value: true,
        },
        {
          label: '否',
          value: false,
        }
      ],
    },
  },
  {
    field: 'brand',
    label: t('equipment.ledger.brandText'),
    component: 'Input',
    colProps: { span: 24 },
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'modelNum',
    label: t('equipment.ledger.modelNumText'),
    component: 'Input',
    colProps: { span: 24 },
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'specifications',
    label: t('equipment.ledger.specificationsText'),
    component: 'Input',
    colProps: { span: 24 },
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'specifications',
    label: t('equipment.ledger.manufacturerText'),
    component: 'Input',
    colProps: { span: 24 },
    componentProps: {
      maxLength: 20,
    },
  },
  {
    field: 'buyDate',
    label: t('equipment.ledger.buyDate'),
    component: 'DatePicker',
    colProps: { span: 24 },
    componentProps: {
      format: 'YYYY-MM-DD hh:mm:ss', // 设置日期格式
      showTime: true, // 显示时间选择器
    },
  },
{
    field: 'price',
    label: t('equipment.ledger.priceText'),
    component: 'InputNumber',
    colProps: { span: 24 },
    componentProps: {
    },
  },
  {
    field: 'productDate',
    label: t('equipment.ledger.productDate'),
    component: 'DatePicker',
    colProps: { span: 24 },
    componentProps: {
      format: 'YYYY-MM-DD hh:mm:ss', // 设置日期格式
      showTime: true, // 显示时间选择器
    },
  },
  {
    field: 'receiveDate',
    label: t('equipment.ledger.receiveDate'),
    component: 'DatePicker',
    colProps: { span: 24 },
    componentProps: {
      format: 'YYYY-MM-DD hh:mm:ss', // 设置日期格式
      showTime: true, // 显示时间选择器
    },
  },
  {
    field: 'registeDate',
    label: t('equipment.ledger.registeDate'),
    component: 'DatePicker',
    colProps: { span: 24 },
    componentProps: {
      format: 'YYYY-MM-DD hh:mm:ss', // 设置日期格式
      showTime: true, // 显示时间选择器
    },
  },
  {
    field: 'supplierId',
    component: 'OrgTreeSelect',
    label: '供应商',
    colProps: { span: 24 },
    componentProps: {
      // 添加 change 事件
      onChange: (value: string) => {
        // 这里需要触发加载人员数据的逻辑
        console.log(value,'value')
      },
    },
  },
  {
    field: 'description',
    label: t('equipment.ledger.description'),
    component: 'InputTextArea',
    colProps: { span: 24 },
    componentProps: {
      maxLength: 200,
    },
  },

];