Beispiel #1
0
        public void CreateTask()
        {
            const string login     = "******";
            var          user_info = new UserInfo()
            {
                Id    = 1,
                Roles = new List <string> {
                    ROLE
                },
                Login = login
            };

            var form = new CreateForm
            {
                Task                  = TaskCode.Explore,
                ExplorationId         = EXPLORATION_ID,
                Notes                 = "notes",
                InformationSystemCode = PRODUCT_CODE
            };

            _ldapService.GetWatchersByLogin(login).Returns(new List <PersonInfo>());

            try
            {
                _taskCreateService.CreateTask(form, user_info);
            }
            catch
            {
                // ignored
            }

            _jiraApiService.Received().CreateIssue(PERIMETER_VALUE, Arg.Any <string>(), form.Notes, Arg.Any <string>(), login,
                                                   Arg.Any <IEnumerable <ProjectVersion> >(), Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>());
        }
Beispiel #2
0
        /// <summary>
        ///	Создает задачу в КСУ.
        /// </summary>
        /// <param name="form">Форма для создания задачи.</param>
        /// <param name="user_info">Информация о пользователе.</param>
        /// <returns>Ключ задачи.</returns>
        public string CreateTask(CreateForm form, UserInfo user_info)
        {
            var workflow = GetWorkflow(form, user_info);

            // сгенерировать основной текст задачи
            var task_content = GenerateContent(form);

            // сгенерировать заголовок
            var task_subject = CreateSubject(form);

            // получить маршрут
            var project = GetProject(form, user_info);

            // получить версии
            var versions = GetVersions(form, project);

            // получить метки
            var labels = GetLabels(form);

            // получить наблюдателей
            var watchers = _ldapService.GetWatchersByLogin(user_info.Login).ToList();

            // определить бизнес-процесс
            var business_process = GetWorkflow(form, user_info).BusinessProcess;

            // определить тип задачи
            var issue_type = GetIssueType(form);

            // создать задачу
            var issue = _jiraApiService.CreateIssue(project, task_subject, task_content, issue_type.ToString(), user_info.Login, versions, business_process, business_process, labels);

            // Добавили наблюдателей
            _jiraApiService.AddWatchers(watchers.Select(x => x.Login), issue);

            _jiraApiService.AddComment(form, watchers, issue, user_info.FullName, task_subject, workflow);

            _jiraApiService.AddFiles(form, issue);

            return(issue.Key.Value);
        }