| | |
| | | import type { VbenFormSchema } from '#/adapter/form'; |
| | | import type { VxeTableGridOptions } from '#/adapter/vxe-table'; |
| | | import type { MesPdTemplateApi } from '#/api/mes/pro/processdesign/template'; |
| | | import type { VbenFormSchema } from "#/adapter/form"; |
| | | import type { VxeTableGridOptions } from "#/adapter/vxe-table"; |
| | | import type { MesPdTemplateApi } from "#/api/mes/pro/processdesign/template"; |
| | | |
| | | import { DICT_TYPE } from '../../../../packages/constants/src'; |
| | | import { getDictOptions } from '../../../../packages/effects/hooks/src'; |
| | | import { DICT_TYPE } from "../../../../packages/constants/src"; |
| | | import { getDictOptions } from "../../../../packages/effects/hooks/src"; |
| | | |
| | | import { z } from '#/adapter/form'; |
| | | import { z } from "#/adapter/form"; |
| | | |
| | | /** 表单类型 */ |
| | | export type FormType = 'create' | 'detail' | 'update'; |
| | | export type FormType = "create" | "detail" | "update"; |
| | | |
| | | /** 新增/修改工艺参数模板的表单 */ |
| | | export function useFormSchema(): VbenFormSchema[] { |
| | | return [ |
| | | { |
| | | fieldName: 'id', |
| | | component: 'Input', |
| | | fieldName: "id", |
| | | component: "Input", |
| | | dependencies: { |
| | | triggerFields: [''], |
| | | triggerFields: [""], |
| | | show: () => false, |
| | | }, |
| | | }, |
| | | { |
| | | fieldName: 'name', |
| | | label: '模板名称', |
| | | component: 'Input', |
| | | fieldName: "templateCode", |
| | | label: "模板编码", |
| | | component: "Input", |
| | | componentProps: { |
| | | maxLength: 64, |
| | | placeholder: "模板编码自动生成", |
| | | disabled: true, |
| | | }, |
| | | }, |
| | | { |
| | | fieldName: "templateName", |
| | | label: "模板名称", |
| | | component: "Input", |
| | | componentProps: { |
| | | maxLength: 100, |
| | | placeholder: '请输入模板名称', |
| | | placeholder: "请输入模板名称", |
| | | }, |
| | | rules: z.string().min(1, '模板名称不能为空').max(100), |
| | | rules: z.string().min(1, "模板名称不能为空").max(100), |
| | | }, |
| | | { |
| | | fieldName: 'type', |
| | | label: '模板类型', |
| | | component: 'Select', |
| | | fieldName: "templateType", |
| | | label: "模板类型", |
| | | component: "Select", |
| | | componentProps: { |
| | | allowClear: true, |
| | | options: getDictOptions(DICT_TYPE.MES_PD_TEMPLATE_TYPE, 'number'), |
| | | placeholder: '请选择模板类型', |
| | | options: getDictOptions(DICT_TYPE.MES_PD_TEMPLATE_TYPE, "number"), |
| | | placeholder: "请选择模板类型", |
| | | }, |
| | | rules: 'selectRequired', |
| | | rules: "selectRequired", |
| | | }, |
| | | { |
| | | fieldName: 'parameterIds', |
| | | label: '关联参数', |
| | | component: 'Input', |
| | | dependencies: { |
| | | triggerFields: [''], |
| | | show: () => false, |
| | | }, |
| | | }, |
| | | { |
| | | fieldName: 'remark', |
| | | label: '备注', |
| | | component: 'Textarea', |
| | | formItemClass: 'col-span-2', |
| | | fieldName: "remark", |
| | | label: "备注", |
| | | component: "Textarea", |
| | | formItemClass: "col-span-2", |
| | | componentProps: { |
| | | maxLength: 250, |
| | | placeholder: '请输入备注', |
| | | placeholder: "请输入备注", |
| | | rows: 3, |
| | | }, |
| | | }, |
| | |
| | | export function useGridFormSchema(): VbenFormSchema[] { |
| | | return [ |
| | | { |
| | | fieldName: 'name', |
| | | label: '模板名称', |
| | | component: 'Input', |
| | | fieldName: "templateCode", |
| | | label: "模板编码", |
| | | component: "Input", |
| | | componentProps: { |
| | | allowClear: true, |
| | | placeholder: '请输入模板名称', |
| | | placeholder: "请输入模板编码", |
| | | }, |
| | | }, |
| | | { |
| | | fieldName: 'type', |
| | | label: '模板类型', |
| | | component: 'Select', |
| | | fieldName: "templateName", |
| | | label: "模板名称", |
| | | component: "Input", |
| | | componentProps: { |
| | | allowClear: true, |
| | | options: getDictOptions(DICT_TYPE.MES_PD_TEMPLATE_TYPE, 'number'), |
| | | placeholder: '请选择模板类型', |
| | | placeholder: "请输入模板名称", |
| | | }, |
| | | }, |
| | | { |
| | | fieldName: "templateType", |
| | | label: "模板类型", |
| | | component: "Select", |
| | | componentProps: { |
| | | allowClear: true, |
| | | options: getDictOptions(DICT_TYPE.MES_PD_TEMPLATE_TYPE, "number"), |
| | | placeholder: "请选择模板类型", |
| | | }, |
| | | }, |
| | | ]; |
| | | } |
| | | |
| | | /** 列表的字段 */ |
| | | export function useGridColumns(): VxeTableGridOptions<MesPdTemplateApi.Template>['columns'] { |
| | | export function useGridColumns(): VxeTableGridOptions<MesPdTemplateApi.Template>["columns"] { |
| | | return [ |
| | | { |
| | | type: 'seq', |
| | | title: '序号', |
| | | type: "seq", |
| | | title: "序号", |
| | | width: 60, |
| | | align: 'center', |
| | | align: "center", |
| | | }, |
| | | { field: 'name', title: '模板名称', minWidth: 180 }, |
| | | { field: "templateCode", title: "模板编码", minWidth: 150 }, |
| | | { field: "templateName", title: "模板名称", minWidth: 180 }, |
| | | { |
| | | field: 'type', |
| | | title: '模板类型', |
| | | field: "templateType", |
| | | title: "模板类型", |
| | | width: 120, |
| | | cellRender: { |
| | | name: 'CellDict', |
| | | name: "CellDict", |
| | | props: { type: DICT_TYPE.MES_PD_TEMPLATE_TYPE }, |
| | | }, |
| | | }, |
| | | { field: 'createUser', title: '创建人', width: 120 }, |
| | | { field: "remark", title: "备注", minWidth: 180 }, |
| | | { |
| | | field: 'createTime', |
| | | title: '创建时间', |
| | | field: "createTime", |
| | | title: "创建时间", |
| | | width: 180, |
| | | formatter: 'formatDateTime', |
| | | formatter: "formatDateTime", |
| | | }, |
| | | { |
| | | title: '操作', |
| | | width: 150, |
| | | fixed: 'right', |
| | | title: "操作", |
| | | width: 240, |
| | | fixed: "right", |
| | | slots: { |
| | | default: 'actions', |
| | | default: "actions", |
| | | }, |
| | | }, |
| | | ]; |