import { useDictionaryStore } from "@/store";
const { dicts } = useDictionaryStore();
import dictDataUtil from "@/common/configs/dictDataUtil";
export const tableConfig = {
  MARTERIAL: {
    url: "/api/v1/base/material",
    column: [
      { label: "物料编码", prop: "materialCode", search: true },
      { label: "物料名称", prop: "materialName", search: true },
      { label: "保质期", prop: "qualityGuaranteePeriod" },

      { label: "物料规格", prop: "spec", search: true },

      {
        label: "物料属性",
        prop: "attributeDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.material_properties,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "是否工装",
        prop: "frock",
        filterable: true,
        type: "radio", //类型为单选框
        dicData: [
          {
            label: "否",
            value: 0,
          },
          {
            label: "是",
            value: 1,
          },
        ],
        value: 0,
      },
      {
        label: "质检方案",
        prop: "inspectDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.quality_testing_plan,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "物料级别",
        prop: "levelDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.material_level,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "封装方法",
        prop: "packageDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.packaging_method,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "质量等级",
        prop: "qualityLevelDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.quality_grade,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "选用类型",
        prop: "selectionDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.selection_type,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "阶段",
        prop: "stageDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.stage,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "物料单位",
        prop: "unitDictValue",
        search: true,
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.danwei_type,
        props: { label: "dictLabel", value: "dictValue" },
      },
      { label: "备注", prop: "remark", type: "textarea" },
    ],
  },

  STATION: {
    url: "/api/v1/base/station",
    column: [
      {
        label: "工位编号",
        prop: "stationCode",
        search: true,
        rules: [
          {
            required: true,
            message: "请填写工位编号",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工位名称",
        prop: "name",
        search: true,
        rules: [
          {
            required: true,
            message: "请填写工位名称",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工位类型",
        prop: "stationDictValue",
        search: true,
        rules: [
          {
            required: true,
            message: "请选择工位类型",
            trigger: "blur",
          },
        ],
        type: "select",
        dicData: dicts.station_type,
        searchClearable: false, //可清空的输入框,默认为true
        filterable: true, //添加filterable属性即可启用搜索功能
        props: {
          label: "dictLabel", // 下拉菜单显示的字段
          value: "dictValue", // 下拉菜单值的字段
        },
      },
      {
        label: "工位操作方式",
        prop: "operateDictValue",
        rules: [
          {
            required: true,
            message: "请选择工位方式",
            trigger: "blur",
          },
        ],
        type: "select",
        dicData: dicts.station_operate_type,
        props: {
          label: "dictLabel", // 下拉菜单显示的字段
          value: "dictValue", // 下拉菜单值的字
        },
      },

      {
        label: "所属产线",
        prop: "productionLineName",
        display: false,
      },
      {
        label: "工位地址",
        prop: "position",
        rules: [
          {
            required: true,
            message: "请填写工位地址",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工位IP地址",
        prop: "stationIp",
        rules: [
          {
            required: true,
            message: "请填写工位IP地址",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工位描述",
        prop: "remark",
        type: "textarea",
        span: 24,
      },
      {
        label: "创建人",
        prop: "creator",
        display: false,
      },
      {
        label: "创建时间",
        prop: "created",
        display: false,
      },
    ],
  },

  DEVICE: {
    url: "/api/v1/device",
    column: [
      {
        label: "资产编号",
        prop: "deviceNo",
        search: true,
        rules: [
          {
            required: true,
            message: "设备编号不能为空",
            trigger: "trigger",
          },
        ],
      },
      {
        label: "设备名称",
        prop: "deviceName",
        search: true,
        rules: [
          {
            required: true,
            message: "设备名称不能为空",
            trigger: "trigger",
          },
        ],
      },
      {
        label: "设备类型",
        prop: "deviceType",
        type: "select",
        hide: true,
        dicData: dicts.device_type,
        props: {
          label: "dictLabel",
          value: "dictValue",
        },
      },
      {
        label: "负责人",
        prop: "head",
        search: true,
      },
      {
        label: "存放位置",
        prop: "devicePosition",
      },
      {
        label: "型号",
        prop: "specifications",
      },
      {
        label: "制造厂",
        prop: "brand",
      },
    ],
  },

  MARTERIAL_BOM: {
    url: "/api/v1/base/materialBom",
    column: [
      {
        label: "物料版本",
        prop: "bomVersion",
        type: "select",
        // search: true,  先选择版本代替了
      },
      {
        label: "物料编码",
        search: true,
        prop: "bomMaterialCode",
      },
      {
        label: "物料编码",
        prop: "materialCode",
        hide: true,
      },

      {
        label: "物料名称",
        prop: "materialName",
        overHidden: true,
        hide: true,
      },

      {
        label: "物料名称",
        prop: "bomMaterialName",
        overHidden: true,
      },
      {
        label: "物料属性",
        prop: "bomMaterialAttribute",
        type: "select",
        dicData: dicts.material_properties,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "物料数量",
        prop: "bomMaterialNumber",
        min: 0,
        slot: true,
        cell: true,
        type: "number",
        precision: 2,
      },
      { label: "物料规格", prop: "spec", search: true },
    ],
  },

  OP_CHECK: {
    url: "/api/v1/op/base/check",
    column: [
      {
        label: "点检项名称",
        prop: "checkName",
        span: 12,
        labelWidth: "150",
        search: true,
        editDisabled: true,
      },
      {
        label: "点检项编码",
        prop: "checkCode",
        labelWidth: "150",
        editDisabled: true,
        span: 12,
        search: true,
      },
      {
        label: "内容",
        prop: "content",
        span: 12,
        search: false,
      },
    ],
  },

  ESOP: {
    url: "/api/v1/base/drawing",
    column: [
      {
        label: "图纸编码",
        prop: "drawingCode",
        span: 12,
        labelWidth: "150",
        search: true,
        editDisabled: true,
      },
      {
        label: "标题",
        prop: "drawingTitle",
        labelWidth: "150",
        editDisabled: true,
        span: 12,
        search: false,
      },
      {
        label: "版本号",
        prop: "drawingVersion",
        span: 12,
        search: false,
      },
      /*{
			  label: "图纸",
			  prop: "drawingPath",
			  span: 24,
			  display: false,
			  slot: true,
			  // formatter: (row, column, cellValue, index) => {
			  //   return `${row.drawingPath}`;
			  // },
			}*/
    ],
  },

  USERS: {
    url: "/api/v1/sys/employeeSkill/users",
    column: [
      {
        label: "用户名",
        prop: "userName",
        search: true,
        width: "120",
      },
      {
        label: "员工编码",
        prop: "employeeCode",
        search: true,
      },
      {
        label: "用户id",
        prop: "id",
        hide: true,
        /*display:false,*/
      },
      {
        label: "用户电话",
        prop: "phone",
        search: true,
      },

      {
        label: "部门",
        prop: "deptName",
        overHidden: true,
        disabled: true,
      },
      /*{
        label: "所属机构",
        prop: "deptName",
        filterable: true,
        type: "select",
        width: 100,
        overHidden: true,
        dicUrl: dictDataUtil.dept_list_url,
        dicMethod: "post",
        props: { label: "deptName", value: "id" },
        disabled: true,
      },*/
    ],
  },

  FAULT: {
    url: "/api/v1/process/escalationFault/order",
    column: [
      {
        label: "不合格审理单号",
        prop: "trackingNumber",
        search: true,
        width: 120,
        overHidden: true,
      },
      {
        label: "工单号",
        prop: "workOrderCode",
        width: 120,
        overHidden: true,
        search: true,
      },
      {
        label: "订单号",
        prop: "orderCode",
        width: 120,
        overHidden: true,
        search: true,
      },
      {
        label: "不合格数量",
        prop: "unqualifiedNum",
        width: 100,
        overHidden: true,
      },

      {
        label: "序列号",
        prop: "seqNo",
        overHidden: true,
      },
      {
        label: "报故人",
        prop: "creator",
        width: 100,
      },

      {
        label: "产品编码",
        prop: "materialCode",
        width: 120,
        overHidden: true,
      },
      {
        label: "产品名称",
        prop: "materialName",
        width: 100,
        overHidden: true,
      },
      {
        label: "规格",
        prop: "spec",
        width: 150,
        overHidden: true,
      },
    ],
  },

  ROUTE_COMMON: {
    url: "/api/v1/op/route/common",
    column: [
      {
        label: "工艺编号",
        prop: "processRouteCode",
        search: true,
        width: 150,
        addDisplay: true,
        editDisabled: true,
        overHidden: true,
        rules: [
          {
            required: true,
            message: "工艺路线名称不能为空",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工艺名称",
        prop: "processRouteName",
        width: 150,
        search: true,
        overHidden: true,
        rules: [
          {
            required: true,
            message: "工艺路线名称不能为空",
            trigger: "blur",
          },
        ],
      },
      {
        label: "工艺类型",
        prop: "processRouteType",
        minWidth: 120,
        search: true,
        overHidden: true,
        rules: [
          {
            required: true,
            message: "工艺路线类型不能为空",
            trigger: "change",
          },
        ],
        type: "select",
        dicUrl: dictDataUtil.request_url + dictDataUtil.TYPE_CODE.routing_type,
        props: {
          label: "dictLabel",
          value: "dictValue",
        },
      },
      {
        label: "启用状态",
        prop: "enabled",
        addDisplay: false,
        // editDisplay: false,
        slot: true,
        width: 100,
        type: "radio",
        dicData: [
          {
            label: "未启用",
            value: 1,
          },
          {
            label: "启用",
            value: 0,
          },
        ],
        value: 0,
      },
      // 只有绑定了工序才可以复制。
      {
        label: "是否可复制",
        prop: "usable2",
        slot: true,
        width: 100,
        search: false,
        filterable: true,
        hide: true,
        addDisplay: false,
        editDisplay: false,
        type: "radio",
        dicData: [
          {
            label: "否",
            value: 0,
          },
          {
            label: "是",
            value: 1,
          },
        ],
        value: 0,
      },
      {
        label: "创建人",
        prop: "creator",
        addDisplay: false,
        editDisplay: false,
        overHidden: true,
      },
      {
        label: "创建时间",
        prop: "created",
        addDisplay: false,
        editDisplay: false,
        width: 150,
        overHidden: true,
      },
    ],
  },
  FULIAO_CAIJI: {
    url: "/api/v1/base/accessories/material",
    column: [
      {
        label: "辅料属性",
        prop: "accessoriesProperty",
        search: true,
        type: "select",
        dicData: dicts.accessories_property,
        props: {
          label: "dictLabel",
          value: "dictValue",
        },
        rules: [
          {
            required: true,
            message: "辅料属性不能为空",
            trigger: "blur",
          },
        ],
      },
      {
        label: "物料编码",
        prop: "materialCode",
        clearable: false,
        search: true,
        rules: [
          {
            required: true,
            message: "生产物料编码不能为空",
            trigger: "change",
          },
        ],
      },
      {
        label: "物料名称",
        prop: "materialName",
        addDisplay: false,
        editDisplay: false,
        search: true,
      },
      {
        label: "物料规格",
        prop: "spec",
        addDisplay: false,
        editDisplay: false,
        search: true,
      },
      {
        label: "辅料类型",
        prop: "accessoriesType",
        search: true,
        type: "select",
        dicData: dicts.accessories_type,
        props: {
          label: "dictLabel",
          value: "dictValue",
        },
        rules: [
          {
            required: true,
            message: "辅料类型不能为空",
            trigger: "blur",
          },
        ],
      },
    ],
  },

  MATERIAL_GATHER: {
    url: "/api/v1/op/operationItem",
    column: [
      {
        label: "id",
        prop: "id",
        display: false,
        hide: true,
      },
      {
        label: "物料名称",
        prop: "itemName",
        search: true,
        addDisabled: true,
        editDisabled: true,
      },
      {
        label: "物料版本号",
        prop: "recordVersion",
        addDisabled: true,
        editDisabled: true,
      },
      {
        label: "物料编码",
        prop: "itemCode",
        search: true,
        addDisabled: true,
        editDisabled: true,
      },
      {
        label: "物料规格",
        prop: "itemModel",
        addDisabled: true,
        search: true,
        editDisabled: true,
      },
      { label: "所需数量", prop: "num" },
      {
        label: "追溯类型",
        prop: "traceType",
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.trace_type,
        props: { label: "dictLabel", value: "dictValue" },
      },
      {
        label: "单位",
        prop: "unit",
        filterable: true,
        type: "select",
        dataType: "string",
        dicData: dicts.danwei_type,
        props: { label: "dictLabel", value: "dictValue" },
      },
    ],
  },

  OP_ACCESSORY: {
    url: "/api/v1/operationAccessoryItem",
    column: [
      {
        label: "id",
        prop: "id",
        display: false,
        hide: true,
      },
      {
        label: "物料名称",
        prop: "itemName",
        addDisabled: true,
        search: true,
        editDisabled: true,
      },
      {
        label: "物料版本号",
        prop: "recordVersion",
        addDisabled: true,
        editDisabled: true,
      },
      {
        label: "物料编码",
        prop: "itemCode",
        addDisabled: true,
        search: true,
        editDisabled: true,
      },
      {
        label: "物料规格",
        prop: "itemModel",
        addDisabled: true,
        search: true,
        editDisabled: true,
      },
      // {
      //   label: "是否需要",
      //   prop: "isTrace",
      //   type: "radio", //类型为单选框
      //   dicData: [
      //     {
      //       label: "需采集物料",
      //       value: 1,
      //     },
      //     {
      //       label: "非必须采集物料",
      //       value: 0,
      //     },
      //   ],
      //   value: 1,
      //   rules: [
      //     {
      //       required: true,
      //       message: "是否需要",
      //       trigger: "blur",
      //     },
      //   ],
      // },
    ],
  },
};
