public Guid CreateNewIncident(CreateIncidentRequest request, IIdentity currentUser) { var currentUserId = mZSupportId; if (!request.IsSupportIncident) { //если выбран текущий юзер как ответсвенный, то тащим его айдишник из ЦРМ. currentUserId = mSystemUsersService.FindUserIdByIdentity(currentUser); } if (currentUserId == null) { throw new AuthenticationException(String.Format("Пользователь с именем {0} не найден в црм", currentUser.Name)); } var incident = new Incident { Id = Guid.NewGuid(), Title = request.Header, Description = request.Body, New_prichina = request.CloseReason, iok_sort_group = request.Specialization, CaseOriginCode = 1, PriorityCode = 3, New_receive = DateTime.Now, CaseTypeCode = 1, CustomerId = new CrmEntityReference("account", request.OrganizationId), ResponsibleContactId = new CrmEntityReference("contact", request.ContactId), OwnerId = new CrmEntityReference("systemuser", currentUserId), svk_functional = request.FunctionalId == Guid.Empty? null: new CrmEntityReference("svk_functional", request.FunctionalId), SubjectId = request.SubjectId == Guid.Empty?null:new CrmEntityReference("subject", request.SubjectId) }; mIncidentsRepository.Create(incident); if (request.CloseAfterRegistration) { mIncidentsRepository.Deactivate(incident, 0, 0); } return(incident.Id); }
public void CreateIncomingNote(CreateIncomingNoteRequest request, IIdentity currentUser) { var currentUserId = mSystemUsersService.FindUserIdByIdentity(currentUser); mIncomingNoteCommands.CreateNew(request, currentUserId); }