import { doFetch } from "@/utils/doFetch";

function getcolumns(setdrawer) {
  return [
    {
      tab: "未完成",
      key: "1",
      columns: [
        {
          title: "单据编号",
          dataIndex: "outStoreNo",
          key: "outStoreNo",
          formItemProps: {
            rules: [{ required: true, message: "此项为必填项" }],
          },
          render: (_, row) => {
            return (
              <a
                className="table-cell"
                onClick={async () => {
                  const detailData = await doFetch({
                    url: "/ta_wms_workmanship/pmOutStoreCheck/queryDetail",
                    params: { id: row?.id },
                  });
                  setdrawer((s) => {
                    return {
                      ...s,
                      open: true,
                      title: `${row.outStoreNo}详情`,
                      val: "detailaddon",
                      detailData: detailData?.data?.data ?? {},
                      fields: [
                        { title: "基本信息", valueType: "split" },
                        {
                          title: "检验单号",
                          dataIndex: "jobNo",
                        },
                        {
                          title: "单据类型",
                          dataIndex: "outStoreTypeName",
                        },
                    
                        {
                          title: "来源区域",
                          dataIndex: "sourceAreaName",
                          key: "sourceAreaName",
                        },
                        {
                          title: "来源位置",
                          dataIndex: "sourcePositionName",
                          key: "sourcePositionName",
                        },
                        {
                          title: "目标区域",
                          dataIndex: "targetAreaName",
                          key: "targetAreaName",
                        },
                        {
                          title: "目标位置",
                          dataIndex: "targetPositionName",
                          key: "targetPositionName",
                        },
                        {
                          title: "判定结果",
                          dataIndex: "checkResultName",
                          key: "checkResultName",
                        },
                        {
                          title: "工单状态",
                          dataIndex: "outStoreStatusName",
                        },
                        {
                          title: "备注",
                          dataIndex: "remark",
                        },
                        {
                          title: "创建人",
                          dataIndex: "distributeUserName",
                        },
                        {
                          title: "创建时间",
                          dataIndex: "distributeTime",
                        },
                        {
                          title: "完成时间",
                          dataIndex: "finishTime",
                        },
                      ],
                      item: row,
                    };
                  });
                }}
              >
                {row.outStoreNo}
              </a>
            );
          },
        },
        {
          title: "单据类型",
          dataIndex: "outStoreTypeName",
          key: "outStoreTypeName",
          hideInSearch: true,
        },
        {
          title: "出厂编号",
          dataIndex: "factoryNo",
          key: "factoryNo",
          fieldProps: {
            placeholder: "请选择",
          },
          formItemProps: {
            rules: [
              {
                required: true,
                message: "此项为必填项",
              },
            ],
          },
        },
        {
          title: "产品型号",
          dataIndex: "productModel",
          hideInSearch: true,
          key: "productModel",
          formItemProps: {
            rules: [
              {
                required: true,
                message: "此项为必填项",
              },
            ],
          },
          span: 3,
        },
        {
          title: "工单号",
          dataIndex: "jobNo",
          key: "jobNo",
          span: 3,
        },
        {
          title: "判定结果",
          dataIndex: "checkResultName",
          key: "checkResultName",
          hideInSearch: true,
        },
        {
          title: "来源区域",
          dataIndex: "sourceAreaName",
          key: "sourceAreaName",
          hideInSearch: true,
        },
        {
          title: "来源位置",
          dataIndex: "sourcePositionName",
          key: "sourcePositionName",
          hideInSearch: true,
        },
        {
          title: "目标区域",
          dataIndex: "targetAreaName",
          key: "targetAreaName",
          hideInSearch: true,
        },
        {
          title: "目标位置",
          dataIndex: "targetPositionName",
          key: "targetPositionName",
          hideInSearch: true,
        },
        {
          title: "单据状态",
          dataIndex: "outStoreStatusName",
          key: "outStoreStatusName",
          hideInSearch: true,
        },
        {
          title: "创建时间",
          dataIndex: "distributeTime",
          key: "distributeTime",
          hideInSearch: true,
        },
      ],
      pathconfig: {
        enableadd: true,
        add: "/pengli-quality/iqcTask/save",
        list: "/ta_wms_workmanship/pmOutStoreCheck/queryPage",
        detail: "/ta_wms_workmanship/pmMaterialApply/queryById",
      },
    },
    {
      tab: "已完成",
      key: "2",
      columns: [
        {
          title: "单据编号",
          dataIndex: "outStoreNo",
          key: "outStoreNo",
          formItemProps: {
            rules: [{ required: true, message: "此项为必填项" }],
          },
          render: (_, row) => {
            return (
              <a
                className="table-cell"
                onClick={async () => {
                  const detailData = await doFetch({
                    url: "/ta_wms_workmanship/pmOutStoreCheckHis/queryDetail",
                    params: { id: row?.id },
                  });
                  setdrawer((s) => {
                    return {
                      ...s,
                      open: true,
                      title: `${row.outStoreNo}详情`,
                      val: "detailaddon",
                      detailData: detailData?.data?.data ?? {},
                      fields: [
                        { title: "基本信息", valueType: "split" },
                        {
                          title: "检验单号",
                          dataIndex: "jobNo",
                        },
                        {
                          title: "单据类型",
                          dataIndex: "outStoreTypeName",
                        },
                    
                        {
                          title: "来源区域",
                          dataIndex: "sourceAreaName",
                          key: "sourceAreaName",
                        },
                        {
                          title: "来源位置",
                          dataIndex: "sourcePositionName",
                          key: "sourcePositionName",
                        },
                        {
                          title: "目标区域",
                          dataIndex: "targetAreaName",
                          key: "targetAreaName",
                        },
                        {
                          title: "目标位置",
                          dataIndex: "targetPositionName",
                          key: "targetPositionName",
                        },
                        {
                          title: "判定结果",
                          dataIndex: "checkResultName",
                          key: "checkResultName",
                        },
                        {
                          title: "工单状态",
                          dataIndex: "outStoreStatusName",
                        },
                        {
                          title: "备注",
                          dataIndex: "remark",
                        },
                        {
                          title: "创建人",
                          dataIndex: "distributeUserName",
                        },
                        {
                          title: "创建时间",
                          dataIndex: "distributeTime",
                        },
                        {
                          title: "完成时间",
                          dataIndex: "finishTime",
                        },
                      ],
                      item: row,
                    };
                  });
                }}
              >
                {row.outStoreNo}
              </a>
            );
          },
        },
        {
          title: "单据类型",
          dataIndex: "outStoreTypeName",
          key: "outStoreTypeName",
          hideInSearch: true,
        },
        {
          title: "出厂编号",
          dataIndex: "factoryNo",
          key: "factoryNo",
          fieldProps: {
            placeholder: "请选择",
          },
          formItemProps: {
            rules: [
              {
                required: true,
                message: "此项为必填项",
              },
            ],
          },
        },
        {
          title: "产品型号",
          dataIndex: "productModel",
          hideInSearch: true,
          key: "productModel",
          formItemProps: {
            rules: [
              {
                required: true,
                message: "此项为必填项",
              },
            ],
          },
          span: 3,
        },
        {
          title: "工单号",
          dataIndex: "jobNo",
          key: "jobNo",
          span: 3,
        },
        {
          title: "判定结果",
          dataIndex: "checkResultName",
          key: "checkResultName",
          hideInSearch: true,
        },
        {
          title: "来源区域",
          dataIndex: "sourceAreaName",
          key: "sourceAreaName",
          hideInSearch: true,
        },
        {
          title: "来源位置",
          dataIndex: "sourcePositionName",
          key: "sourcePositionName",
          hideInSearch: true,
        },
        {
          title: "目标区域",
          dataIndex: "targetAreaName",
          key: "targetAreaName",
          hideInSearch: true,
        },
        {
          title: "目标位置",
          dataIndex: "targetPositionName",
          key: "targetPositionName",
          hideInSearch: true,
        },
        {
          title: "单据状态",
          dataIndex: "outStoreStatusName",
          key: "outStoreStatusName",
          hideInSearch: true,
        },
        {
          title: "创建时间",
          dataIndex: "distributeTime",
          key: "distributeTime",
          hideInSearch: true,
        },
        {
          title: "完成时间",
          dataIndex: "finishTime",
          key: "finishTimeList",
          valueType: 'dateRange',
        },
      ],
      pathconfig: {
        enableadd: true,
        add: "/pengli-quality/iqcTask/save",
        edit: "/pengli-quality/iqcTask/save",
        list: "/ta_wms_workmanship/pmOutStoreCheckHis/queryPage",
        detail: "/ta_wms_workmanship/pmMaterialApplyHis/queryById",
      },
    },
  ];
}

export default getcolumns;