Example #1
0
        public ServiceResult <long> CreateNewDonator(CreateNewDonatorDTO model)
        {
            string errorMessage = string.Empty;
            EnumServiceResultType serviceResultType = EnumServiceResultType.Unspecified;
            long result = -1;

            try
            {
                var anyExistingUser = _userRepository.Entities.Any(p => p.Username == model.Username && p.Email == model.Email && p.IsActive);

                if (anyExistingUser)
                {
                    throw new Exception("Kullanıcı bilgisi mevcut.");
                }

                var newUser = new Contracts.Entities.EF.User
                {
                    IsActive   = true,
                    Password   = model.Password,
                    Username   = model.Username,
                    UserTypeId = model.UserTypeId,
                    Email      = model.Email
                };

                var newDonator = new Donator
                {
                    FirstName    = model.FirstName,
                    LastName     = model.LastName,
                    BirthDate    = model.BirthDate,
                    OccupationId = model.OccupationId,
                    PhoneNumber  = model.PhoneNum,
                    WorkPlace    = model.WorkPlace,
                };

                newUser.Donator.Add(newDonator);

                var userResult = _userRepository.Add(newUser);
                _unitOfWork.SaveChanges();

                result            = userResult.Id;
                serviceResultType = EnumServiceResultType.Success;
            }
            catch (Exception ex)
            {
                errorMessage      = ex.Message;
                serviceResultType = EnumServiceResultType.Error;
            }
            return(new ServiceResult <long> {
                ErrorMessage = errorMessage, Result = result, ServiceResultType = serviceResultType
            });
        }
        protected void buttonCreateNewDonator_Click(object sender, EventArgs e)
        {
            try
            {
                var newDonator = new CreateNewDonatorDTO();

                if (!string.IsNullOrWhiteSpace(Donator_Password.Text) && !string.IsNullOrWhiteSpace(Donator_PasswordAgain.Text))
                {
                    if (Donator_Password.Text != Donator_PasswordAgain.Text)
                    {
                        throw new Exception("Şifre bilgisi uyuşmuyor!");
                    }
                }

                newDonator.UserTypeId   = (int)EnumUserType.Donator;
                newDonator.FirstName    = Donator_FirstName.Text;
                newDonator.LastName     = Donator_LastName.Text;
                newDonator.BirthDate    = Donator_BirthDate.SelectedDate.Value;
                newDonator.PhoneNum     = Donator_Phone.Text;
                newDonator.Username     = Donator_TCKN.Text;
                newDonator.Email        = Donator_Email.Text;
                newDonator.Password     = Donator_Password.Text;
                newDonator.OccupationId = Convert.ToInt32(Donator_Occupation.SelectedValue);

                ServiceResult <long> serviceResult = new ServiceResult <long>();
                var queryString = new Dictionary <string, string>();
                var response    = ApiHelper.CallSendApiMethod(ApiKeys.AccountApiUrl, "CreateNewDonator", queryString, newDonator);
                if (!response.IsSuccessStatusCode)
                {
                    throw new Exception("Hata oluştu!");
                }
                var data = response.Content.ReadAsStringAsync().Result;
                serviceResult = JsonConvert.DeserializeObject <ServiceResult <long> >(data);

                if (serviceResult.ServiceResultType != EnumServiceResultType.Success)
                {
                    throw new Exception(serviceResult.ErrorMessage);
                }

                labelErrorMessage.Text    = "Bağışçı üyeliği oluşturuldu.";
                labelErrorMessage.Visible = true;
            }
            catch (Exception ex)
            {
                labelErrorMessage.Text    = ex.Message;
                labelErrorMessage.Visible = true;
            }
        }
Example #3
0
        public IHttpActionResult CreateNewDonator(CreateNewDonatorDTO model)
        {
            if (!Request.Headers.Contains("apiKey"))
            {
                return(Unauthorized());
            }

            string apiKey = Request.Headers.GetValues("apiKey").First();

            if (!ApiHelper.CheckKey(apiKey))
            {
                return(Unauthorized());
            }

            try
            {
                var serviceResult = _accountService.CreateNewDonator(model);
                return(Ok(serviceResult));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }