public void AddUserToProject(Guid userId, Guid projectId, bool isProjectAdmin) { var ps = new ProjectStaffDO(); ps.ProjectId = projectId; ps.UserId = userId; ps.IsProjectAdmin = isProjectAdmin; _projectStaffDao.Create(ps); }
public UserDO CreateSubscription(Subscription subscription, string originalEmail) { //create Subscription var subscriptionDo = _mapper.Map <SubscriptionDO>(subscription); subscriptionDo.OriginalEmail = originalEmail; _log.InfoFormat("Subscription ID:{0}, subscription created in DB. {1}", subscription.SubscriptionReference, subscriptionDo); //create Company var company = new CompanyDO(); if (string.IsNullOrEmpty(subscription.Customer.Company)) { company.Name = $"{subscription.Customer.FirstName} {subscription.Customer.LastName}"; } else { company.Name = subscription.Customer.Company; } company.SubscriptionReference = subscriptionDo.SubscriptionReference; company.Subscription = subscriptionDo; _companyDao.Create(company); _log.InfoFormat("Subscription ID:{0}, company created in DB. {1}", subscription.SubscriptionReference, company); //create master User var user = new UserDO(); user.EMail = subscription.Customer.Email; user.FirstName = subscription.Customer.FirstName; user.FamilyName = subscription.Customer.LastName; user.PhoneNumber = subscription.Customer.PhoneNumber; user.IsCompanyAdmin = true; user.CompanyId = company.CompanyId; user.IsPinzSuperAdmin = false; user.Password = RandomPassword.Generate(); user = _userDao.Create(user); _log.InfoFormat("Subscription ID:{0}, user created in DB. {1}", subscription.SubscriptionReference, user); //create Project var project = new ProjectDO { CompanyId = company.CompanyId, Name = "GetStarted", Description = "Project to get you started with PINZ! Feel free to rename and use as you like." }; project = _projectDao.Create(project); //staff user as admin on project var ps = new ProjectStaffDO { ProjectId = project.ProjectId, UserId = user.UserId, IsProjectAdmin = true }; _projectStaffDao.Create(ps); //create tasks var categoryAdministration = CreateCategory(project, "Administration"); CreateTask(categoryAdministration, user, "Rename this project", "In the Outlook Ribbon, click on PINZ tab. Fromo there you can navigate to Administration panel."); CreateTask(categoryAdministration, user, "Invite more users", "In the Outlook Ribbon, click on PINZ tab. Fromo there you can navigate to Administration panel."); CreateTask(categoryAdministration, user, "Close Tasks", "Close Tasks by ticking the checkboxes in the task list."); CreateTask(categoryAdministration, user, "Delete Categories", "Only empty categories can be deleted."); var educationAdministration = CreateCategory(project, "Education"); CreateTask(educationAdministration, user, "Visit Support Page", "Visit our Support Senter at https://pinzonline.zendesk.com for more information."); return(user); }