コード例 #1
0
        /// <summary>
        /// Method Code : 009
        /// </summary>
        /// <param name="rescuePassword"></param>
        /// <returns></returns>
        public ApiResult <bool> ForgotPassword(Req_RescuePassword rescuePassword)
        {
            var result = new ApiResult <bool>(ServiceCode, "009");

            try
            {
                var find_user = _unitOfWork.Users.SingleOrDefault(w => (w.Email == rescuePassword.Username || w.Username == rescuePassword.Username));
                //
                if (find_user != null)
                {
                    //TODO: ChangePAssword metodu yazılacak
                    var randomPassword = new Random().Next(100000, 9999999).ToString();
                    find_user.Password = randomPassword;

                    MailValues mailValues = new MailValues()
                    {
                        IsBodyHtml = true,
                        Subject    = "CombinEseR Kullanıcı Kayıt Bilgisi",
                        Body       = MailManager.MailTemplateForgotPass(_mapper.Map <User, Res_RescuePassword>(find_user)),
                        List_To    = new List <string>()
                        {
                            find_user.Email
                        }
                    };


                    MailManager.SendMail(mailValues);

                    result.Data = true;
                    result.SetSuccess("Şifreniz başarıyla değiştirildi. Yeni şifreniz E posta hesabınıza gönderilmiştir.");
                    _unitOfWork.Commit();
                }
                else
                {
                    result.Data = false;
                    result.SetError("Sistemde kayıtlı böyle bir kullanıcı bulunamadı.", 404);
                }
                return(result);
            }
            catch (Exception e)
            {
                result.SetException(e);
                result.Data = false;
                return(result);
            }
        }
コード例 #2
0
        /// <summary>
        /// Method Code : 008
        /// </summary>
        /// <param name="email"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public ApiResult <bool> FreezeAccount(Req_FreezeAccount freezeAccount)
        {
            var result = new ApiResult <bool>(ServiceCode, "008");

            try
            {
                var find_user = _unitOfWork.Users.SingleOrDefault(w => w.Email == freezeAccount.Email && w.Password == freezeAccount.Password);
                if (find_user != null)
                {
                    find_user.IsActive = 0;

                    MailValues mailValues = new MailValues()
                    {
                        IsBodyHtml = true,
                        Subject    = "CombinEseR Kullanıcı Kayıt Bilgisi",
                        Body       = MailManager.MailTemplateFreezeAccount(),
                        List_To    = new List <string>()
                        {
                            find_user.Email
                        }
                    };


                    MailManager.SendMail(mailValues);

                    _unitOfWork.Commit();
                    result.Data = true;
                    result.SetSuccess("Hesabınız dondurulmuştur.");
                }
                else
                {
                    result.Data = false;
                    result.SetError("Kullanıcı bulunamadı.", 404);
                }
                return(result);
            }
            catch (Exception e)
            {
                result.SetException(e);
                return(result);
            }
        }
コード例 #3
0
        public static bool SendMail(MailValues mail)
        {
            if (mail != null)
            {
                MailSetting mailSetting = new MailSetting()
                {
                    EnableSSL  = true,
                    Port       = 587,
                    Server     = "smtp-mail.outlook.com",
                    SenderName = "*****@*****.**",
                    Username   = "******",
                    Password   = "******"
                };

                mail.MailSetting = mailSetting;

                return(_senderMail.SendMail(mail));
            }
            else
            {
                return(false);
            }
        }
コード例 #4
0
        /// <summary>
        /// Method Code: 001
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public ApiResult <Res_User> AddUser(Req_Register user)
        {
            var result = new ApiResult <Res_User>(ServiceCode, "001");

            try
            {
                var userItem = new User()
                {
                    CityId          = 0,
                    Name            = user.Name,
                    Username        = user.Username,
                    Email           = user.Email,
                    Password        = user.Password,
                    Gender          = user.Gender,
                    Follower        = 0,
                    Followed        = 0,
                    IsActive        = 0,
                    ProfileImageURL = "",
                    RegisterDate    = DateTime.Now
                };

                var findUser = _unitOfWork.Users.SingleOrDefault(w => w.Email == userItem.Email || w.Username == userItem.Username);

                // Aynı kayda sahip başka bir kullancıı mevcut mu?
                if (findUser != null)
                {
                    result.SetError("Aynı e-postaya veya kullanıcı adına sahip başka bir kullanıcı bulunmaktadır.", 405);
                    result.Data = null;
                }
                else
                {
                    _unitOfWork.Users.Add(userItem);


                    MailValues mailValues = new MailValues()
                    {
                        IsBodyHtml = true,
                        Subject    = "CombinEseR Kullanıcı Kayıt Bilgisi",
                        Body       = MailManager.GetMailTemplate("Kullanıcı Kayıt Bildirimi", $"Aramıza Hoşgeldiniz, {user.Name}", null),
                        List_To    = new List <string>()
                        {
                            user.Email
                        }
                    };


                    MailManager.SendMail(mailValues);

                    result.Data = _mapper.Map <User, Res_User>(userItem);

                    _unitOfWork.Commit();
                    result.SetSuccess("Kullanıcı başarıyla sisteme kaydedildi.");
                }

                return(result);
            }
            catch (Exception e)
            {
                result.SetException(e);
                return(result);
            }
        }