Example #1
0
        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."));
            }
        }
Example #2
0
        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;
            }
        }
Example #4
0
        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));
 }