创建评分字段以存储具有可配置尺度和验证的数字评分


评分自定义字段允许您在记录中存储数字评分,并可配置最小值和最大值。它们非常适合用于绩效评分、满意度评分、优先级级别或您项目中的任何基于数字尺度的数据。

基本示例

创建一个默认0-5尺度的简单评分字段:

mutation CreateRatingField {
  createCustomField(input: {
    name: "Performance Rating"
    type: RATING
    projectId: "proj_123"
    max: 5
  }) {
    id
    name
    type
    min
    max
  }
}

高级示例

创建一个具有自定义尺度和描述的评分字段:

mutation CreateDetailedRatingField {
  createCustomField(input: {
    name: "Customer Satisfaction"
    type: RATING
    projectId: "proj_123"
    description: "Rate customer satisfaction from 1-10"
    min: 1
    max: 10
  }) {
    id
    name
    type
    description
    min
    max
  }
}

输入参数

CreateCustomFieldInput

参数 类型 必需 描述
name String! ✅ 是 评分字段的显示名称
type CustomFieldType! ✅ 是 必须是 RATING
projectId String! ✅ 是 此字段将被创建的项目 ID
description String 显示给用户的帮助文本
min Float 最小评分值(无默认值)
max Float 最大评分值

设置评分值

要在记录上设置或更新评分值:

mutation SetRatingValue {
  setTodoCustomField(input: {
    todoId: "todo_123"
    customFieldId: "field_456"
    value: "4.5"
  })
}

SetTodoCustomFieldInput 参数

参数 类型 必需 描述
todoId String! ✅ 是 要更新的记录的 ID
customFieldId String! ✅ 是 评分自定义字段的 ID
value String! ✅ 是 评分值作为字符串(在配置范围内)

创建具有评分值的记录

创建新记录时包含评分值:

mutation CreateRecordWithRating {
  createTodo(input: {
    title: "Review customer feedback"
    todoListId: "list_123"
    customFields: [{
      customFieldId: "rating_field_id"
      value: "4.5"
    }]
  }) {
    id
    title
    customFields {
      id
      customField {
        name
        type
        min
        max
      }
      value
    }
  }
}

响应字段

TodoCustomField 响应

字段 类型 描述
id String! 字段值的唯一标识符
customField CustomField! 自定义字段定义
value Float 存储的评分值(通过 customField.value 访问)
todo Todo! 此值所属的记录
createdAt DateTime! 值创建的时间
updatedAt DateTime! 值最后修改的时间

注意:评分值实际上通过 customField.value.number 在查询中访问。

CustomField 响应

字段 类型 描述
id String! 字段的唯一标识符
name String! 评分字段的显示名称
type CustomFieldType! 始终是 RATING
min Float 允许的最小评分值
max Float 允许的最大评分值
description String 字段的帮助文本

评分验证

值约束

  • 评分值必须是数字(浮点类型)
  • 值必须在配置的最小/最大范围内
  • 如果未指定最小值,则没有默认值
  • 最大值是可选的,但建议设置

验证规则

重要:验证仅在提交表单时发生,而不是在直接使用 setTodoCustomField 时。

  • 输入被解析为浮点数(使用表单时)
  • 必须大于或等于最小值(使用表单时)
  • 必须小于或等于最大值(使用表单时)
  • setTodoCustomField 接受任何字符串值而不进行验证

有效评分示例

对于最小值=1,最大值=5 的字段:

1       # Minimum value
5       # Maximum value
3.5     # Decimal values allowed
2.75    # Precise decimal ratings

无效评分示例

对于最小值=1,最大值=5 的字段:

0       # Below minimum
6       # Above maximum
-1      # Negative value (below min)
abc     # Non-numeric value

配置选项

评分尺度设置

# 1-5 star rating
mutation CreateStarRating {
  createCustomField(input: {
    name: "Star Rating"
    type: RATING
    projectId: "proj_123"
    min: 1
    max: 5
  }) {
    id
    min
    max
  }
}

# 0-100 percentage rating
mutation CreatePercentageRating {
  createCustomField(input: {
    name: "Completion Percentage"
    type: RATING
    projectId: "proj_123"
    min: 0
    max: 100
  }) {
    id
    min
    max
  }
}

常见评分尺度

  • 1-5 星: min: 1, max: 5
  • 0-10 NPS: min: 0, max: 10
  • 1-10 绩效: min: 1, max: 10
  • 0-100 百分比: min: 0, max: 100
  • 自定义尺度: 任何数字范围

所需权限

自定义字段操作遵循标准的基于角色的权限:

操作 所需角色
Create rating field Project member with appropriate role
Update rating field Project member with appropriate role
Set rating value Project member with field edit permissions
View rating value Project member with view permissions

注意:所需的具体角色取决于您项目的自定义角色配置和字段级权限。

错误响应

验证错误(仅限表单)

{
  "errors": [{
    "message": "Validation error message",
    "extensions": {
      "code": "VALIDATION_ERROR"
    }
  }]
}

重要:评分值验证(最小/最大约束)仅在提交表单时发生,而不是在直接使用 setTodoCustomField 时。

找不到自定义字段

{
  "errors": [{
    "message": "Custom field was not found.",
    "extensions": {
      "code": "CUSTOM_FIELD_NOT_FOUND"
    }
  }]
}

最佳实践

尺度设计

  • 在类似字段中使用一致的评分尺度
  • 考虑用户熟悉度(1-5 星,0-10 NPS)
  • 设置适当的最小值(0 与 1)
  • 为每个评分级别定义明确的含义

数据质量

  • 在存储之前验证评分值
  • 适当使用小数精度
  • 考虑用于显示目的的四舍五入
  • 提供关于评分含义的明确指导

用户体验

  • 以视觉方式显示评分尺度(星星、进度条)
  • 显示当前值和尺度限制
  • 提供评分含义的上下文
  • 考虑新记录的默认值

常见用例

  1. 绩效管理

    • 员工绩效评分
    • 项目质量评分
    • 任务完成评分
    • 技能水平评估
  2. 客户反馈

    • 满意度评分
    • 产品质量评分
    • 服务体验评分
    • 净推荐值(NPS)
  3. 优先级和重要性

    • 任务优先级级别
    • 紧急评分
    • 风险评估评分
    • 影响评分
  4. 质量保证

    • 代码审查评分
    • 测试质量评分
    • 文档质量
    • 过程遵循评分

集成功能

与自动化

  • 根据评分阈值触发操作
  • 发送低评分通知
  • 为高评分创建后续任务
  • 根据评分值分配工作

与查找

  • 计算记录的平均评分
  • 按评分范围查找记录
  • 从其他记录引用评分数据
  • 汇总评分统计信息

与 Blue 前端

  • 在表单上下文中自动范围验证
  • 视觉评分输入控件
  • 实时验证反馈
  • 星星或滑块输入选项

活动跟踪

评分字段的更改会自动跟踪:

  • 旧评分值和新评分值被记录
  • 活动显示数字变化
  • 所有评分更新的时间戳
  • 用户归属更改

限制

  • 仅支持数字值
  • 没有内置的视觉评分显示(星星等)
  • 小数精度取决于数据库配置
  • 不存储评分元数据(评论、上下文)
  • 不进行自动评分聚合或统计
  • 不支持不同尺度之间的评分转换
  • 关键:最小/最大验证仅在表单中有效,而不通过 setTodoCustomField

相关资源

AI助手

响应是通过人工智能生成的,可能包含错误。

我能帮您什么?

随时问我关于 Blue 或本文档的任何问题。

输入发送 • Shift+Enter 换行 • ⌘I 打开