コード例 #1
0
 //public List<User> Users { get; set; }
 //public List<Project> Projects { get; set; }
 public static CompanyVm Map(Core.Model.Company comp)
 => new CompanyVm()
 {
     Id     = comp.Id,
     Name   = comp.Name,
     Status = comp.Status
 };
コード例 #2
0
        public async Task <string> Register(RegisterModel registerModel)
        {
            if (await _companyRepository.IsNameDuplicate(registerModel.CompanyName))
            {
                throw new Exception($"'{registerModel.CompanyName}' already exists. Please choose a different name.");
            }
            var company = new Core.Model.Company(registerModel.CompanyName);

            _companyRepository.Add(company);

            await _companyRepository.SaveChanges();

            var user = new Core.Model.User(company, registerModel.Email, registerModel.Username);

            var identityResult = await userManager.CreateAsync(user, registerModel.Password);

            if (identityResult.Succeeded)
            {
                await signInManager.SignInAsync(user, isPersistent : false);

                return(GetToken(user));
            }
            else
            {
                _companyRepository.Remove(company);
                await _companyRepository.SaveChanges();

                throw new Exception(identityResult?.Errors?.First()?.Description);
            }
        }
コード例 #3
0
        public async Task <string> Create(CreateCompanyVm vm)
        {
            if (await _companyRepository.IsNameDuplicate(vm.Name))
            {
                throw new Exception($"'{vm.Name}' already exists. Please choose a different name.");
            }
            var company = new Core.Model.Company(vm.Name);

            _companyRepository.Add(company);
            await _companyRepository.SaveChanges();

            return(company.Id);
        }
コード例 #4
0
 public void Add(Core.Model.Company company)
 => _companies.Add(company);
コード例 #5
0
 public void Remove(Core.Model.Company company)
 => _companies.Remove(company);