private void WriteResources(ProjectFile project)
        {
            for (int i = 0; i < this.resources.Count; i++)
            {
                var resModel = this.resources[i];
                var res      = project.AddResource();

                res.Name     = resModel.Name;
                res.UniqueID = new Integer(resModel.ID);
            }
        }
Exemple #2
0
        /// <summary>
        /// Creates the resource assigmnet for the task, adding the resource to the project if it has not been added yet
        /// </summary>
        /// <param name="task">Task to assign resource to</param>
        /// <param name="resource">Resource to assign to task</param>
        private void SetupResourceAssignment(Task task, Job job)
        {
            // Add a resource assignment to the task for responsible contacts
            Guid contactGuid = job.Responsibility.ResponsibleContactId;

            if (addedResources.ContainsKey(contactGuid))
            {
                // Resource has already been added to project so assign existing resource to task
                task.AddResourceAssignment(addedResources[contactGuid]);
            }
            else
            {
                // Resource has not been added - retrieve contact details, add resource to project and assign the new resource to the task
                Contact contact = pow.Contacts.FirstOrDefault(c => c.Id == contactGuid);
                if (contact != null)
                {
                    Resource resource = project.AddResource();
                    PopulateResourceFromContact(resource, contact);
                    addedResources.Add(contactGuid, resource);
                    task.AddResourceAssignment(resource);
                }
            }
        }