Как добавить новый тип оценки в Review

Written by Anton Resko
Updated 2 years ago

1. Добавь новый сервис в каталоге сервисов, используя стандартный сервис ревью

metadataVersion: 1
tags:
  - title: Review
case:
  items:
    - stageId: stage-1
    - stageId: stage-2
    - stageId: stage-6
    - stageId: stage-3
    - stageId: stage-4
  onDelete:
    mode: GoToStage
    stageId: stage-4
stages:
  - id: stage-1
    startCriteria:
      formula: '([__interviewParameters.peerReview.interviewTemplateId] ?? 0) > 0'
    title: Peer selection
    parallel: false
    completeAction: GoToNextStage
    color: '#daa21c'
    items:
      - taskId: task-1
      - taskId: task-2
    recipientsOnActivated: []
  - id: stage-2
    title: Review
    parallel: true
    completeAction: GoToNextStage
    color: '#03a9f4'
    items:
      - taskId: task-3
      - taskId: task-4
      - taskId: task-5
    recipientsOnActivated: []
  - id: stage-3
    title: Done
    parallel: false
    completeAction: CompleteCase
    color: '#4caf50'
    items: []
    recipientsOnActivated: []
  - id: stage-4
    title: Canceled
    parallel: false
    completeAction: CompleteCase
    color: '#cf8aaf'
    items: []
    recipientsOnActivated: []
  - id: stage-6
    startCriteria:
      formula: '([__interviewParameters.managerReview.interviewTemplateId] ?? 0) > 0 && PersonManager([__interviewParameters.reviewee]) != nil'
    title: Manager review
    parallel: false
    completeAction: GoToNextStage
    color: '#009eaa'
    items:
      - taskId: task-6
    recipientsOnActivated: []
taskGroups: []
tasks:
  - id: task-1
    title: Select your peers
    type: HumanTask
    performers:
      - type: Parameter
        id: __interviewParameters.reviewee
    actions:
      - id: action-1
        title: Send to approval
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: null
    performersMode: ForAllPerformers
    to: []
    message:
      subject: ''
      body: ''
      buttons:
        - type: TaskLink
  - id: task-2
    title: 'Approve peers for {{__interviewParameters.reviewee}} review'
    type: HumanTask
    startCriteria:
      formula: 'PersonManager([__interviewParameters.reviewee]) != nil'
    performers:
      - type: Parameter
        id: __interviewParameters.reviewee
        manager: true
    actions:
      - id: action-1
        title: Approve
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
      - id: action-2
        title: Back to reviewee
        type: GoToStage
        taskState: Completed
        validateRequiredParameters: true
        stageId: stage-1
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: null
    performersMode: ForAllPerformers
    to: []
    message:
      subject: ''
      body: ''
      buttons:
        - type: TaskLink
  - id: task-3
    title: Please fill review on yourself
    type: InterviewTask
    startCriteria:
      formula: '([__interviewParameters.selfReview.interviewTemplateId] ?? 0) > 0'
    interviewTemplate:
      parameterId: __interviewParameters.selfReview.interviewTemplateId
    reviewParameterId: __interviewParameters.reviewId
    reviewerType:
      value: Self
    performers:
      - type: Parameter
        id: __interviewParameters.reviewee
    actions:
      - id: action-1
        title: Submit
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: ''
    performersMode: ForAllPerformers
    to: []
    message:
      subject: '{{__interviewParameters.selfReview.notificationSubject}}'
      body: '{{__interviewParameters.selfReview.notificationBody}}'
      buttons:
        - type: TaskLink
  - id: task-4
    title: 'Please fill peer review on {{__interviewParameters.reviewee}}'
    type: InterviewTask
    startCriteria:
      formula: '([__interviewParameters.peerReview.interviewTemplateId] ?? 0) > 0 && [__interviewParameters.peerReview.respondents] != nil'
    interviewTemplate:
      parameterId: __interviewParameters.peerReview.interviewTemplateId
    reviewParameterId: __interviewParameters.reviewId
    reviewerType:
      value: Peer
    performersMode: ForEachPerson
    performers:
      - type: Parameter
        id: __interviewParameters.peerReview.respondents
    actions:
      - id: action-1
        title: Submit
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: ''
    to: []
    message:
      subject: '{{__interviewParameters.peerReview.notificationSubject}}'
      body: '{{__interviewParameters.peerReview.notificationBody}}'
      buttons:
        - type: TaskLink
  - id: task-5
    title: 'Please fill subordinate review on {{__interviewParameters.reviewee}}'
    type: InterviewTask
    startCriteria:
      formula: '([__interviewParameters.subordinateReview.interviewTemplateId] ?? 0) > 0 && [__interviewParameters.subordinateReview.respondents] != nil'
    interviewTemplate:
      parameterId: __interviewParameters.subordinateReview.interviewTemplateId
    reviewParameterId: __interviewParameters.reviewId
    reviewerType:
      value: Subordinate
    performersMode: ForEachPerson
    performers:
      - type: Parameter
        id: __interviewParameters.subordinateReview.respondents
    actions:
      - id: action-1
        title: Submit
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: ''
    to: []
    message:
      subject: '{{__interviewParameters.subordinateReview.notificationSubject}}'
      body: '{{__interviewParameters.subordinateReview.notificationBody}}'
      buttons:
        - type: TaskLink
  - id: task-6
    title: 'Manager review on {{__interviewParameters.reviewee}}'
    type: InterviewTask
    startCriteria:
      formula: '([__interviewParameters.managerReview.interviewTemplateId] ?? 0) > 0 && PersonManager([__interviewParameters.reviewee]) != nil'
    interviewTemplate:
      parameterId: __interviewParameters.managerReview.interviewTemplateId
    reviewParameterId: __interviewParameters.reviewId
    reviewerType:
      value: Manager
    performers:
      - type: Parameter
        id: __interviewParameters.reviewee
        manager: true
    actions:
      - id: action-1
        title: Submit
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: ''
    performersMode: ForAllPerformers
    to: []
    message:
      subject: '{{__interviewParameters.managerReview.notificationSubject}}'
      body: '{{__interviewParameters.managerReview.notificationBody}}'
      buttons:
        - type: TaskLink
parameters:
  declaration:
    - id: __interviewParameters
      caption: Review parameters
      type: struct
      parameters:
        declaration:
          - id: managerReview
            caption: Manager review
            type: struct
            parameters:
              declaration:
                - id: interviewTemplateId
                  caption: Interview template ID
                  type: number
                - id: notificationBody
                  caption: Notification body
                  type: text
                - id: notificationSubject
                  caption: Notification subject
                  type: text
                - id: respondents
                  caption: Respondents
                  type: userOrGroup
                  mode: users
                  multiSelect: true
              behavior:
                case:
                  - parameterId: interviewTemplateId
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationSubject
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationBody
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: respondents
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                stages:
                  - stageId: Draft
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                  - stageId: stage-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                tasks:
                  - taskId: task-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-5
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
            formLayout:
              type: group
              items:
                - - type: parameter
                    parameterId: interviewTemplateId
                - - type: parameter
                    parameterId: notificationSubject
                - - type: parameter
                    parameterId: notificationBody
                - - type: parameter
                    parameterId: respondents
          - id: peerReview
            caption: Peer review
            type: struct
            parameters:
              declaration:
                - id: interviewTemplateId
                  caption: Interview template ID
                  type: number
                - id: notificationBody
                  caption: Notification body
                  type: text
                - id: notificationSubject
                  caption: Notification subject
                  type: text
                - id: respondents
                  caption: Respondents
                  type: userOrGroup
                  mode: users
                  multiSelect: true
              behavior:
                case:
                  - parameterId: interviewTemplateId
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationSubject
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationBody
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: respondents
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                stages:
                  - stageId: Draft
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                  - stageId: stage-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                tasks:
                  - taskId: task-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'true'
                  - taskId: task-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                  - taskId: task-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-5
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
            formLayout:
              type: group
              items:
                - - type: parameter
                    parameterId: interviewTemplateId
                - - type: parameter
                    parameterId: notificationSubject
                - - type: parameter
                    parameterId: notificationBody
                - - type: parameter
                    parameterId: respondents
          - id: reviewId
            caption: Review ID
            type: number
          - id: reviewee
            caption: Reviewee
            type: userOrGroup
            mode: users
          - id: selfReview
            caption: Self review
            type: struct
            parameters:
              declaration:
                - id: interviewTemplateId
                  caption: Interview template ID
                  type: number
                - id: notificationBody
                  caption: Notification body
                  type: text
                - id: notificationSubject
                  caption: Notification subject
                  type: text
                - id: respondents
                  caption: Respondents
                  type: userOrGroup
                  mode: users
                  multiSelect: true
              behavior:
                case:
                  - parameterId: interviewTemplateId
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationSubject
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationBody
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: respondents
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                stages:
                  - stageId: Draft
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                  - stageId: stage-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                tasks:
                  - taskId: task-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-5
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
            formLayout:
              type: group
              items:
                - - type: parameter
                    parameterId: interviewTemplateId
                - - type: parameter
                    parameterId: notificationSubject
                - - type: parameter
                    parameterId: notificationBody
                - - type: parameter
                    parameterId: respondents
          - id: subordinateReview
            caption: Subordinate review
            type: struct
            parameters:
              declaration:
                - id: interviewTemplateId
                  caption: Interview template ID
                  type: number
                - id: notificationBody
                  caption: Notification body
                  type: text
                - id: notificationSubject
                  caption: Notification subject
                  type: text
                - id: respondents
                  caption: Respondents
                  type: userOrGroup
                  mode: users
                  multiSelect: true
              behavior:
                case:
                  - parameterId: interviewTemplateId
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationSubject
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: notificationBody
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                  - parameterId: respondents
                    visible: 'false'
                    editable: 'false'
                    required: 'false'
                stages:
                  - stageId: Draft
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                  - stageId: stage-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - stageId: stage-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                tasks:
                  - taskId: task-1
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-2
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-3
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-4
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-5
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                  - taskId: task-6
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'false'
                        editable: 'false'
                        required: 'false'
            formLayout:
              type: group
              items:
                - - type: parameter
                    parameterId: interviewTemplateId
                - - type: parameter
                    parameterId: notificationSubject
                - - type: parameter
                    parameterId: notificationBody
                - - type: parameter
                    parameterId: respondents
        behavior:
          case:
            - parameterId: reviewee
              visible: 'false'
              editable: 'false'
              required: 'false'
            - parameterId: reviewId
              visible: 'false'
              editable: 'false'
              required: 'false'
            - parameterId: managerReview
              visible: 'false'
              editable: 'false'
              required: 'false'
            - parameterId: selfReview
              visible: 'false'
              editable: 'false'
              required: 'false'
            - parameterId: peerReview
              visible: 'false'
              editable: 'false'
              required: 'false'
            - parameterId: subordinateReview
              visible: 'false'
              editable: 'false'
              required: 'false'
          stages:
            - stageId: Draft
              items:
                - parameterId: reviewee
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
            - stageId: stage-1
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - stageId: stage-2
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - stageId: stage-3
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - stageId: stage-4
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - stageId: stage-6
              items:
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
          tasks:
            - taskId: task-1
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - taskId: task-2
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'true'
                  editable: 'true'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - taskId: task-3
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - taskId: task-4
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - taskId: task-5
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
            - taskId: task-6
              items:
                - parameterId: reviewee
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: reviewId
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: managerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: selfReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: peerReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
                - parameterId: subordinateReview
                  visible: 'false'
                  editable: 'false'
                  required: 'false'
      formLayout:
        type: group
        items:
          - - type: parameter
              parameterId: reviewee
          - []
          - []
          - []
          - - type: parameter
              parameterId: reviewId
          - - type: parameter
              parameterId: managerReview
  behavior:
    case:
      - parameterId: __interviewParameters
        visible: 'false'
        editable: 'false'
        required: 'false'
    stages:
      - stageId: Draft
        items:
          - parameterId: __interviewParameters
            visible: 'true'
            editable: 'true'
            required: 'false'
      - stageId: stage-1
        items:
          - parameterId: __interviewParameters
            visible: 'true'
            editable: 'true'
            required: 'false'
      - stageId: stage-2
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - stageId: stage-3
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - stageId: stage-4
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - stageId: stage-6
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
    tasks:
      - taskId: task-1
        items:
          - parameterId: __interviewParameters
            visible: 'true'
            editable: 'true'
            required: 'false'
      - taskId: task-2
        items:
          - parameterId: __interviewParameters
            visible: 'true'
            editable: 'true'
            required: 'false'
      - taskId: task-3
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - taskId: task-4
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - taskId: task-5
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
      - taskId: task-6
        items:
          - parameterId: __interviewParameters
            visible: 'false'
            editable: 'false'
            required: 'false'
layout:
  type: group
  items:
    - - type: parameter
        caption: Peers
        parameterId: __interviewParameters.peerReview.respondents

2. В дизайнере сервиса добавь новый тип оценки, скопировав любую оценку из доступных (меню в трех точках)

4. После копирования оценки - внеси все необходимые изменения в дизайнере (название задачи, описание, исполнитель) и сохрани сервис.

Поле пользователь на данном этапе можно добавить как обычный параметр и проставить права на редактирования в дизайнере, или это поле можно создать при редактирование Yaml сервиса далее

5. Скопируй Yaml сервиса и открой в редакторе

6. Скопируй структурный параметр оценки Peers - peerReview

 7. Переименуй структуру в соответствии с новой оценкой

8. Если необходимо - внеси разрешения на редактирование параметров на определенных стадиях/задачах (секция behavior)

Если используешь параметр персоны из структуры - необходимо проставить разрешения на редактирование для задач в которых пользователи будут указывать эту персону.

Дополнительно необходимо прописать такой параметр в Layout по аналогии с Peers

    - - type: parameter
        caption: Peers
        parameterId: __interviewParameters.peerReview.respondents
Разрешения для стадии Draft всегда должны соответствовать стандартным значениям (см. ниже).
В случае, когда копируешь структуру проверка не нужна.
                  - stageId: Draft
                    items:
                      - parameterId: interviewTemplateId
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationSubject
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: notificationBody
                        visible: 'true'
                        editable: 'true'
                        required: 'false'
                      - parameterId: respondents
                        visible: 'true'
                        editable: 'true'
                        required: 'false'

9. После добавления структур необходимо внести изменения в интервью-задачи (задача оценки)

Для этого тебе нужно в секции Tasks найти нужные задачи (можно использовать поиск по описанию задачи).

  - id: task-5
    title: 'Please fill Guardian review on {{__interviewParameters.reviewee}}'
    type: InterviewTask
    startCriteria:
      formula: '([__interviewParameters.subordinateReview.interviewTemplateId] ?? 0) > 0 && [parameter-1] != nil'
    interviewTemplate:
      parameterId: __interviewParameters.subordinateReview.interviewTemplateId
    reviewParameterId: __interviewParameters.reviewId
    reviewerType:
      value: Guardian
    performersMode: ForEachPerson
    performers:
      - type: Parameter
        id: parameter-1
    actions:
      - id: action-1
        title: Submit
        type: CompleteTask
        taskState: Completed
        validateRequiredParameters: true
    activation:
      relativeTo: TaskStart
    notifyOnAssigned: true
    description: ''
    to: []
    message:
      subject: 'Guardian review on {{__interviewParameters.reviewee}}'
      body: 'Please fill Guardian review on {{__interviewParameters.reviewee}}'
      buttons:
        - type: TaskLink

Шаги по изменению интервью-задачи:

1. Критерии запуска. В фрагменте кода ниже необходимо внести изменения

    startCriteria:
     formula: '([__interviewParameters.subordinateReview.interviewTemplateId] ?? 0) > 0 && [__interviewParameters.subordinateReview.interviewRespondent] != nil'

Измени первый параметр в проверке на параметр из новой структуры, который отвечает за анкету для оценки

__interviewParameters.subordinateReview.interviewTemplateId -> __interviewParameters.guardianReview.interviewTemplateId

Измени первый параметр в проверке на параметр из новой структуры, который отвечает за аудиторию (персоны которые будут оценивать

__interviewParameters.subordinateReview.interviewRespondent -> __interviewParameters.guardianReview.interviewRespondent
или parameter-n (если добавляли параметр через дизайнер)

Больше о условиях запуска

2. Анкета опроса

    interviewTemplate:
      parameterId: __interviewParameters.subordinateReview.interviewTemplateId

Измени параметр на параметр из новой структуры, который отвечает за анкету для оценки

__interviewParameters.subordinateReview.interviewTemplateId -> __interviewParameters.guardianReview.interviewTemplateId

3. Укажи название типа оценки (отображается в мастере запуска и отчете)

    reviewerType:
      value: Guardian

4. Исполнителя (аудиторию) можно указать в коде, или в дизайнере

    performers:
      - type: Parameter
        id: parameter-1


Did this answer your question?