initPluginColumns()

in src/routes/System/Metadata/index.js [340:529]


  initPluginColumns() {
    this.setState({
      columns: [
        {
          align: "center",
          title: getIntlContent("SHENYU.AUTH.APPNAME"),
          dataIndex: "appName",
          key: "appName",
          ellipsis: true,
          width: 150,
          sorter: (a, b) => (a.appName > b.appName ? 1 : -1),
          render: (text) => {
            return (
              <div style={{ color: "#260033", fontWeight: "bold" }}>{text}</div>
            );
          },
        },
        {
          align: "center",
          title: getIntlContent("SHENYU.META.PATH"),
          dataIndex: "path",
          key: "path",
          ellipsis: true,
          render: (text, record) => {
            let content = (
              <div>
                <p>{record.pathDesc}</p>
                <hr />
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.META.SERVER.INTER")}
                  </span>
                  :
                  <span style={{ color: "#1f640a" }}>
                    {" "}
                    {record.serviceName}
                  </span>
                </p>
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.META.FUNC.NAME")}
                  </span>
                  :
                  <span style={{ color: "#1f640a" }}> {record.methodName}</span>
                </p>
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.AUTH.PARAMS")}
                  </span>
                  :
                  <span style={{ color: "#1f640a" }}>
                    {" "}
                    {record.parameterTypes}
                  </span>
                </p>
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.META.EXPAND.PARAMS")}
                  </span>
                  :<span style={{ color: "#1f640a" }}> {record.rpcExt}</span>
                </p>
                <hr />
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.SYSTEM.CREATETIME")}
                  </span>
                  :
                  <span style={{ color: "#1f640a" }}>
                    {" "}
                    {record.dateCreated}
                  </span>
                </p>
                <p>
                  <span style={{ color: "#204969" }}>
                    {getIntlContent("SHENYU.SYSTEM.UPDATETIME")}
                  </span>
                  :
                  <span style={{ color: "#1f640a" }}>
                    {" "}
                    {record.dateUpdated}
                  </span>
                </p>
              </div>
            );
            return (
              <Popover
                placement="topLeft"
                content={content}
                title={getIntlContent("SHENYU.AUTH.PATH.DESCRIBE")}
              >
                <div style={{ color: "#1f640a" }}>{text || "----"}</div>
              </Popover>
            );
          },
        },
        {
          align: "center",
          title: `Rpc${getIntlContent("SHENYU.COMMON.TYPE")}`,
          dataIndex: "rpcType",
          key: "rpcType",
          ellipsis: true,
          width: 120,
          sorter: (a, b) => (a.rpcType > b.rpcType ? 1 : -1),
          render: (text) => {
            if (text.length < 5) {
              return <Tag color="cyan">{text}</Tag>;
            } else if (text.length < 15) {
              return <Tag color="purple">{text}</Tag>;
            } else if (text.length < 25) {
              return <Tag color="blue">{text}</Tag>;
            }
            return <Tag color="red">{text}</Tag>;
          },
        },

        {
          align: "center",
          title: getIntlContent("SHENYU.SYSTEM.STATUS"),
          dataIndex: "enabled",
          key: "enabled",
          ellipsis: true,
          width: 100,
          render: (text, row) => (
            <AuthButton
              perms="system:meta:disable"
              noAuth={
                text ? (
                  <div className="open">
                    {getIntlContent("SHENYU.COMMON.OPEN")}
                  </div>
                ) : (
                  <div className="close">
                    {getIntlContent("SHENYU.COMMON.CLOSE")}
                  </div>
                )
              }
            >
              <Switch
                checkedChildren={getIntlContent("SHENYU.COMMON.OPEN")}
                unCheckedChildren={getIntlContent("SHENYU.COMMON.CLOSE")}
                checked={text}
                onChange={(checked) => {
                  this.statusSwitch({
                    list: [row.id],
                    enabled: checked,
                    callback: this.query,
                  });
                }}
              />
            </AuthButton>
          ),
        },
        {
          align: "center",
          title: getIntlContent("SHENYU.COMMON.OPERAT"),
          ellipsis: true,
          dataIndex: "operate",
          key: "operate",
          width: 80,
          fixed: "right",
          render: (text, record) => {
            return (
              <div className="optionParts">
                <AuthButton perms="system:meta:edit">
                  <div
                    className="edit"
                    onClick={() => {
                      this.editClick(record);
                    }}
                  >
                    {getIntlContent("SHENYU.SYSTEM.EDITOR")}
                  </div>
                </AuthButton>
                <AuthButton perms="system:meta:add">
                  <div
                    className="edit"
                    onClick={() => {
                      this.editClick(record, true);
                    }}
                  >
                    {getIntlContent("SHENYU.COMMON.COPY")}
                  </div>
                </AuthButton>
              </div>
            );
          },
        },
      ],
    });
  }