ISurveyService — интерфейс

Сервис для работы со списком опросов.

Синтаксис

public interface ISurveyService

Методы

Имя Описание

AddAnswer(SurveyListSurvey, StaffEmployee, StatesState, DateTime)

Добавляет ответ на вопрос опроса.

AddAnswerIssue(SurveyListSurveyAnswer, SurveyListSurveyQuestion)

Добавляет элемент вопрос-ответ.

AddIssueBaseUniversalItemValue(SurveyListSurveyAnswerIssue, BaseUniversalItem)

Создаёт значение ответа в виде записи конструктора справочников.

AddIssueBooleanValue(SurveyListSurveyAnswerIssue, Boolean)

Создаёт значение ответа в виде логического значения.

AddIssueCardReferenceValue(SurveyListSurveyAnswerIssue, Guid)

Создаёт значение ответа в виде ссылки на карточку.

AddIssueCategoryValue(SurveyListSurveyAnswerIssue, CategoriesCategory)

Создаёт значение ответа в виде категории.

AddIssueDateTimeValue(SurveyListSurveyAnswerIssue, DateTime)

Создаёт значение ответа в виде дата/время.

AddIssueDepartmentValue(SurveyListSurveyAnswerIssue, StaffUnit)

Создаёт значение ответа в виде организации.

AddIssueDoubleValue(SurveyListSurveyAnswerIssue, Double)

Создаёт значение ответа в виде значения с плавающей запятой.

AddIssueEmployeesValue(SurveyListSurveyAnswerIssue, IEnumerable<Guid>)

Создаёт коллекцию значений ответов в виде сотрудников.

AddIssueEmployeeValue(SurveyListSurveyAnswerIssue, StaffEmployee)

Создаёт значение ответа в виде сотрудника.

AddIssueEnumValue(SurveyListSurveyAnswerIssue, SurveyListSurveyQuestionEnumValue)

Создаёт значение ответа в виде перечисления.

AddIssueFolderValue(SurveyListSurveyAnswerIssue, FoldersFolder)

Создаёт значение ответа в виде папки.

AddIssueGroupValue(SurveyListSurveyAnswerIssue, StaffGroup)

Создаёт значение ответа в виде группы сотрудников.

AddIssueImageValue(SurveyListSurveyAnswerIssue, Guid)

Создаёт значение ответа в виде изображения.

AddIssueIntegerValue(SurveyListSurveyAnswerIssue, Int32)

Создаёт значение ответа в виде целого числа.

AddIssueNumeratorValue(SurveyListSurveyAnswerIssue, String, Guid)

Создаёт значение ответа в виде значения нумератора.

AddIssueOperationValue(SurveyListSurveyAnswerIssue, StatesOperation)

Создаёт значение ответа в виде операции.

AddIssuePartnerCompanyValue(SurveyListSurveyAnswerIssue, PartnersCompany)

Создаёт значение ответа в виде организации контрагента.

AddIssuePartnerEmployeeValue(SurveyListSurveyAnswerIssue, PartnersEmployee)

Создаёт значение ответа в виде сотрудника контрагента.

AddIssueRoleModelRoleValue(SurveyListSurveyAnswerIssue, RoleModelRole)

Создаёт значение ответа в виде роли ролевой модели.

AddIssueStateValue(SurveyListSurveyAnswerIssue, StatesState)

Создаёт значение ответа в виде состояния.

AddIssueStringValue(SurveyListSurveyAnswerIssue, String)

Создаёт значение ответа в виде строки.

AddIssueVariantValue(SurveyListSurveyAnswerIssue, Object)

Создаёт значение ответа в виде неявного значения (тип System.Object).

AddQuestion(SurveyListSurvey, String, String, SurveyListSurveyQuestionDataType)

Добавляет вопрос к опросу.

AddQuestionEnumValue(SurveyListSurveyQuestion, Int32, String)

Добавляет варианты ответов к вопросу.

AddSignature(SurveyListSurvey, SurveyListSurveyAnswer, X509Certificate2)

Подписывает ЭП ответ на опрос.

AddSurvey(SurveyList, String)

Создаёт опрос в списке опросов.

CreateSignatureList

Создаёт карточку списка подписей. Объект автоматически сохраняется в контексте.

CreateSurveyList

Создаёт карточку списка опросов.

FindAnswerIssue(SurveyListSurveyAnswer, SurveyListSurveyQuestion)

Осуществляет поиск в ответах указанного значения ответа.

FindOrCreateAnswerIssue(SurveyListSurveyAnswer, SurveyListSurveyQuestion)

Осуществляет поиск в ответах указанного значения ответа. В случае отсутствия — будет создан новый элемент вопрос-ответ.

FindOrCreateQuestion(SurveyListSurvey, String, String, SurveyListSurveyQuestionDataType)

Осуществляет поиск вопроса в опросе. В случае отсутствия — будет создан новый.

FindOrCreateSurvey(SurveyList, String)

Осуществляет поиск опроса в списке опросов. В случае отсутствия — будет создан новый.

FindQuestion(SurveyListSurvey, String)

Осуществляет поиск вопроса в опросе.

FindSurvey(SurveyList, String)

Осуществляет поиск опроса в списке опросов.

GetAnswerHash(SurveyListSurveyAnswer)

Вычисляет хэш SHA512 для коллекции вопрос-ответ, содержащейся в ответе на опрос.

GetIssueValue(SurveyListSurveyQuestionDataType, IEnumerable<SurveyListSurveyAnswerIssueValue>)

Получает коллекцию значений из коллекции ответов.

GetIssueValue(SurveyListSurveyQuestionDataType, SurveyListSurveyAnswerIssueValue)

Получает значение из ответа.

VerifySignature(SurveyListSurveyAnswer, X509Certificate2)

Проверяет действительность установленной на ответ ЭП.

Примеры

Создание опроса является довольно простой задачей. Основной момент здесь — это реализация соответствующей разметки в карточке, к которой привязан опрос. Ниже приведён пример создания простого опроса

(1)

ISurveyService surveyService = objectContext.GetService<ISurveyService>(); (2)

SurveyList surveyList = surveyService.CreateSurveyList(); (3)

SurveyListSurvey surveyListSurvey = surveyService.AddSurvey(surveyList, "Утренние опросы"); (4)
surveyListSurvey.OneTime = true; (5)
surveyListSurvey.Sign = true; (6)
surveyListSurvey.SignatureList = surveyService.CreateSignatureList();

SurveyListSurveyQuestion surveyListSurveyQuestion = surveyService.AddQuestion(surveyListSurvey, "Доброе", "Скажите, является ли утро добрым?", SurveyListSurveyQuestionDataType.Boolean); (7)

objectContext.AcceptChanges(); (8)
1 Инициализация контекста объектов.
2 Получение сервисов.
3 Создание списка.
4 Добавление опроса в список опросов.
5 Отвечать единожды.
6 Подписывать.
7 Добавляем вопрос, тип данных boolean.
8 Сохранение.