import type { ProColumns } from '@ant-design/pro-components';
import { Tag } from 'antd';
import GroupTagSelect from '@/components/GroupTag/GroupTagSelect';
import {
  type AiSampleRespVO,
  createSampleTag,
  createSampleTagGroup,
  deleteSampleTag,
  deleteSampleTagGroup,
  getSampleTagGroup,
  getSampleTagPage,
  updateSampleTag,
  updateSampleTagGroup,
} from '@/services/ai/sample';
export const baseTenantColumns: ProColumns<AiSampleRespVO>[] = [
  {
    title: '样本名称',
    dataIndex: 'sampleName',
    width: 200,
    ellipsis: true,
  },
  {
    title: '文件格式',
    width: 100,
    dataIndex: 'sampleMineType',
  },
  {
    title: '标签',
    dataIndex: 'tags',
    width: 200,
    hideInSearch: true,
    render: (_, record) => {
      return record.tags?.map((tag) => {
        return <Tag key={tag.id}>{tag.tagName}</Tag>;
      });
    },
  },
  {
    title: '注释',
    width: 100,
    dataIndex: 'remark',
    hideInSearch: true,
  },

  {
    title: '标签',
    hideInTable: true,
    dataIndex: 'tagIds',
    valueType: 'select',
    search: {
      transform: (value) => {
        console.log(value);
        return value.join(',');
      },
    },

    renderFormItem: (_) => {
      return (
        <GroupTagSelect
          request={{
            groupsApi: {
              get: getSampleTagGroup,
              create: createSampleTagGroup,
              delete: deleteSampleTagGroup,
              update: updateSampleTagGroup,
            },
            tagsApi: {
              get: getSampleTagPage,
              create: createSampleTag,
              delete: deleteSampleTag,
              update: updateSampleTag,
            },
          }}
          editable
          placeholder="请选择标签"
        />
      );
    },
  },
];

// export const formColumns = (data: {
//   type: string;
//   grade: number;
// }): ProFormColumnsType[] => [
//   {
//     title: "类目",
//     dataIndex: "grade",
//     valueType: "radio",
//     fieldProps: {
//       value: data.grade || 1,
//       options: [
//         { label: "一级类目", value: 1 },
//         { label: "二级类目", value: 2 },
//         { label: "三级类目", value: 3 },
//       ],
//       disabled: data.type === "create",
//     },
//   },
//   {
//     title: "类目名称",
//     dataIndex: "username",
//     formItemProps: {
//       rules: [
//         {
//           required: true,
//           message: "请输入用户名",
//         },
//       ],
//     },
//   },
//   {
//     title: "排序权重",
//     dataIndex: "sort",
//     valueType: "digit",
//   },
//   {
//     title: "类目描述",
//     dataIndex: "description",
//     valueType: "textarea",
//     renderFormItem: () => {
//       return <TinyMCEEditor />;
//     },
//   },
//   {
//     title: "关联父级",
//     dataIndex: "parentId",
//     valueType: "select",
//     hideInForm: data.grade - 1 === 0,
//   },
//   {
//     title: "类目icon",
//     dataIndex: "icon",
//   },
//   {
//     title: "类目标签",
//     dataIndex: "tages",
//     renderFormItem: () => {
//       return (
//         <TagEditor
//           placeholder="输入标签名称"
//           maxCount={10}
//           tagProps={{
//             color: "blue",
//           }}
//         />
//       );
//     },
//   },
//   {
//     title: "类目状态",
//     dataIndex: "status",
//     hideInForm: data.type === "create",
//   },
//   {
//     title: "类目ID",
//     dataIndex: "categoryId",
//     hideInForm: data.type === "create",
//   },
//   {
//     title: "创建时间",
//     dataIndex: "createTime",
//     valueType: "dateTime",
//     hideInForm: data.type === "create",
//   },
//   {
//     title: "创建人",
//     dataIndex: "creator",
//     hideInForm: data.type === "create",
//   },
//   {
//     title: "更新时间",
//     dataIndex: "updateTime",
//     valueType: "dateTime",
//     hideInForm: data.type === "create",
//   },
//   {
//     title: "更新人",
//     dataIndex: "updator",
//     hideInForm: data.type === "create",
//   },
// ];

// {
//   title: "模板内容",
//   dataIndex: "content",
//   valueType: "textarea",
// },
