create.config.ts 2.46 KB
import {
  CalculateDeltaFieldsEnum,
  CalculateDeltaFieldsNameEnum,
} from '../../../enum/formField/enrichment';
import { FormSchema } from '/@/components/Form';
import { useI18n } from '/@/hooks/web/useI18n';

const { t } = useI18n();

export const formSchemas: FormSchema[] = [
  {
    field: CalculateDeltaFieldsEnum.INPUT_VALUE_KEY,
    component: 'Input',
    label: t(CalculateDeltaFieldsNameEnum.INPUT_VALUE_KEY),
    colProps: { span: 8 },
    rules: [
      { required: true, message: `请输入${t(CalculateDeltaFieldsNameEnum.INPUT_VALUE_KEY)}` },
    ],
    componentProps: {
      placeholder: `请输入${t(CalculateDeltaFieldsNameEnum.INPUT_VALUE_KEY)}`,
    },
  },
  {
    field: CalculateDeltaFieldsEnum.OUTPUT_VALUE_KEY,
    component: 'Input',
    label: t(CalculateDeltaFieldsNameEnum.OUTPUT_VALUE_KEY),
    colProps: { span: 8 },
    rules: [
      { required: true, message: `请输入${t(CalculateDeltaFieldsNameEnum.OUTPUT_VALUE_KEY)}` },
    ],
    componentProps: {
      placeholder: `请输入${t(CalculateDeltaFieldsNameEnum.OUTPUT_VALUE_KEY)}`,
    },
  },
  {
    field: CalculateDeltaFieldsEnum.ROUND,
    component: 'InputNumber',
    label: t(CalculateDeltaFieldsNameEnum.ROUND),
    colProps: { span: 8 },
    componentProps: {
      step: 1,
      max: 15,
      placeholder: `请输入${t(CalculateDeltaFieldsNameEnum.ROUND)}`,
    },
  },
  {
    field: CalculateDeltaFieldsEnum.USE_CACHE,
    component: 'Checkbox',
    label: '',
    renderComponentContent: () => {
      return {
        default: () => t(CalculateDeltaFieldsNameEnum.USE_CACHE),
      };
    },
  },
  {
    field: CalculateDeltaFieldsEnum.TELL_FAILURE_IF_DELTA_IS_NEGATIVE,
    component: 'Checkbox',
    label: '',
    renderComponentContent: () => {
      return {
        default: () => t(CalculateDeltaFieldsNameEnum.TELL_FAILURE_IF_DELTA_IS_NEGATIVE),
      };
    },
  },
  {
    field: CalculateDeltaFieldsEnum.ADD_PERIOD_BETWEEN_MSGS,
    component: 'Checkbox',
    label: '',
    renderComponentContent: () => {
      return {
        default: () => t(CalculateDeltaFieldsNameEnum.ADD_PERIOD_BETWEEN_MSGS),
      };
    },
  },
  {
    field: CalculateDeltaFieldsEnum.PERIOD_VALUE_KEY,
    component: 'Input',
    label: t(CalculateDeltaFieldsNameEnum.PERIOD_VALUE_KEY),
    required: true,
    ifShow: ({ model }) => model[CalculateDeltaFieldsEnum.ADD_PERIOD_BETWEEN_MSGS],
    componentProps: {
      placeholder: `请输入${t(CalculateDeltaFieldsNameEnum.PERIOD_VALUE_KEY)}`,
    },
  },
];