예제 #1
0
        public async Task <Town> AddTownAsync(TownCreationBindingModel model)
        {
            var town = this.Mapper.Map <Town>(model);

            await this.DbContext.Towns.AddAsync(town);

            await this.DbContext.SaveChangesAsync();

            return(town);
        }
        public async Task <Company> EditCompanyAsync(CompanyEditBindingModel model)
        {
            var dbCompany = await GetCompanyById(model.CompanyId);

            var town = await this.townsService.GetTownByName(model.TownName);

            if (town == null)
            {
                var townToAdd = new TownCreationBindingModel {
                    Name = model.TownName
                };
                town = await this.townsService.AddTownAsync(townToAdd);
            }

            dbCompany.TownId  = town.TownId;
            dbCompany.Address = model.Address;
            dbCompany.Bulstat = model.Bulstat;
            dbCompany.Name    = model.Name;

            await this.DbContext.SaveChangesAsync();

            return(dbCompany);
        }
        public async Task <IActionResult> Add(CompanyCreationBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            var town = await this.townsService.GetTownByName(model.TownName);

            if (town == null)
            {
                var townToAdd = new TownCreationBindingModel {
                    Name = model.TownName
                };
                town = await this.townsService.AddTownAsync(townToAdd);
            }

            model.TownId = town.TownId;

            var company = await this.companyService.AddCompanyAsync(model);

            return(this.RedirectToAction("Details", new { id = company.CompanyId }));
        }