public IActionResult Post([FromBody] DealerDto dealerDto) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var dealer = Mapper.Map <Dealer>(dealerDto); if (_dealerRepository.DealerExists(dealer)) { return(StatusCode(500, "Dealer already exists.")); } var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); var profile = _accountRepository.GetUserProfile(userId); var createdDealer = _dealerRepository.CreateDealer(dealer, profile.UserProfileId); if (createdDealer == null) { return(StatusCode(500, "A problem happened while handling your request.")); } var createdDealerToReturn = Mapper.Map <DealerDto>(createdDealer); return(Created(createdDealerToReturn)); } catch (Exception ex) { _logger.LogError($"Failed in Post /Dealers: {ex}"); return(StatusCode(500, "A problem happened while handling your request.")); } }
public async Task <DealerModel> CreateDealerAsync(DealerModel newDealer) { var dealerEntity = mapper.Map <DealerEntity>(newDealer); repository.CreateDealer(dealerEntity); var res = await repository.SaveChangesAsync(); if (res) { return(mapper.Map <DealerModel>(dealerEntity)); } throw new Exception("Database exception"); }
public ResultEntity <bool> AddDealer(AddDealerDto addDealerDto) { //内存中组织对象 var dealerid = Guid.NewGuid(); var dealercontact = new List <Contact>(); for (int i = 0; i < addDealerDto.ContactName.Count; i++) { var dealercontactmodel = new Contact().CreateContact(dealerid, addDealerDto.ContactName[i], addDealerDto.ContactTel[i], addDealerDto.ContactSheng[i], addDealerDto.ContactShi[i], addDealerDto.ContactQu[i], addDealerDto.ContactJiedao[i], addDealerDto.ContactIsDefault[i] ); dealercontact.Add(dealercontactmodel); } var dealer = new Dealers(_dealerRepository).RegisterDealers(dealerid, addDealerDto.Name, addDealerDto.Tel, addDealerDto.EleMoney, dealercontact, addDealerDto.Parentid); var login = new Login().CreateLogin(dealer.Tel, dealerid); //实际持续化到数据库中 try { using (_repository) { _dealerRepository.CreateDealer(dealer); if (addDealerDto.Parentid != null) { _dealerRepository.SubParentEleMoney((Guid)addDealerDto.Parentid, addDealerDto.EleMoney); } _dealerRepository.AddParentSubCount(addDealerDto.Parentid); _loginRepository.CreateLogin(login); _repository.Commit(); } return(GetResultEntity(true)); } catch (Exception ex) { throw ex; } }
public ResultEntity <bool> AddDealer(AddDealerDTO adddealerdto) { var dealerid = Guid.NewGuid(); var dealercontacts = new List <Contact>(); for (int i = 0; i < adddealerdto.ContactNames.Count; i++) { var dealercontact = new Contact().CreateContact(dealerid, adddealerdto.ContactNames[i], adddealerdto.ContactTels[i], adddealerdto.ContactProvinces[i], adddealerdto.ContactCities[i], adddealerdto.ContactZeors[i], adddealerdto.ContactStreets[i], adddealerdto.IsDefaultContact[i]); dealercontacts.Add(dealercontact); } var dealer = new Dealers(idealerrepository).RegisterDealer(dealerid, adddealerdto.Name, adddealerdto.Tel, adddealerdto.EleMoney, dealercontacts, adddealerdto.Parentid); var login = new Login().CreateLogin(dealer.Tel, dealerid); try { using (irepository) { idealerrepository.CreateDealer(dealer); if (adddealerdto.Parentid != null) { idealerrepository.SubParentEleMoney(Guid.Parse(adddealerdto.Parentid.ToString()), adddealerdto.EleMoney); } idealerrepository.AddParentSubCount(adddealerdto.Parentid); iloginrepository.CreateLogin(login); irepository.Commit(); } return(GetResultEntity(true)); } catch (Exception error) { throw error; } }
public string CreateDealer(Dealer dealer) { return(_dealerRepository.CreateDealer(dealer)); }