protected void PopulateServiceProviders(CrudOperationData entity, ServiceIncident webServiceObject) { var serviceProvider = new ServiceProvider[2]; var reportedBy = new Person { Role = PersonRole.ReportedBy, RoleSpecified = true, ContactID = ISMConstants.AddEmailIfNeeded(SecurityFacade.CurrentUser().MaximoPersonId), }; serviceProvider[0] = new ServiceProvider { Person = reportedBy }; var affectedUserContact = ISMConstants.AddEmailIfNeeded(GetAffectedPerson(entity)); if (affectedUserContact != null) { var affectedUser = new Person { ContactID = affectedUserContact, Role = PersonRole.AffectedUser, RoleSpecified = true }; serviceProvider[1] = new ServiceProvider { Person = affectedUser }; } webServiceObject.ServiceProvider = serviceProvider; }
protected void HandleWorkLog(CrudOperationData entity, ServiceIncident maximoTicket) { var maximoWorklogs = entity.GetRelationship("worklog_"); var worklogList = new List <Activity>(); var user = SecurityFacade.CurrentUser(); foreach (var jsonWorklog in (IEnumerable <CrudOperationData>)maximoWorklogs) { var worklogid = jsonWorklog.GetAttribute("worklogid"); if (worklogid == null) { var activity = LongDescriptionHandler.HandleLongDescription(new Activity(), jsonWorklog, "ActionLog"); activity.ActionLogSummary = (string)jsonWorklog.GetAttribute("description"); activity.type = "WorkLog"; activity.UserID = ISMConstants.AddEmailIfNeeded(user.MaximoPersonId); //activity.LogDateTimeSpecified = true; //activity.LogDateTime = DateTime.Now; activity.ActivityType = "CLIENTNOTE"; worklogList.Add(activity); } } maximoTicket.Activity = ArrayUtil.PushRange(maximoTicket.Activity, worklogList); }