Exemplo n.º 1
0
        public ServiceResult <object> Signup(SignupModel model)
        {
            try
            {
                VakifDb  db       = new VakifDb(_appSettings.ConnStr);
                WSHelper wsHelper = new WSHelper(db, _appSettings);
                System.Globalization.CultureInfo clsCulture = new System.Globalization.CultureInfo("tr-TR");

                string resultInfo = "";

                if (model.email != model.emailrepeat)
                {
                    resultInfo = "Girilen E-Posta adresleri aynı değil.<br/>Lütfen E-Posta adreslerini tekrar giriniz.";
                    return(new ServiceResult <object>()
                    {
                        isSuccessfull = true, ResultCode = 1, ResultData = null, ResultExplanation = resultInfo
                    });
                }

                int    iTcStatus = 0;
                string sResult   = "";

                model.password = Guid.NewGuid().ToString().Substring(0, 8);;
                model.IP       = getIP();

                string seriNo = model.cuzdanSeri.ToUpper(clsCulture);

                if (!string.IsNullOrEmpty(model.cuzdanNo))
                {
                    seriNo = model.cuzdanSeri.ToUpper(clsCulture) + Util.CuzdanNoKontrol(model.cuzdanNo);// seriNo = model.cuzdanSeri;
                }

                //Cuzdan No Kontrol Ediliyor
                MernisSorguSonuc mernisSorguSonuc = wsHelper.CuzdanKontrol(model, model.tckn, seriNo, string.IsNullOrEmpty(model.cuzdanNo));

                // Tc ve kimlik bilgileri doğru ise
                if (mernisSorguSonuc.SonucKodu == 1)
                {
                    // MernisSorguSonuc mernisSorguSonuc = wsHelper.MernistenSorgula(model.tckn);

                    var sonuc = db.AddPersonel(
                        model.tckn,// HttpUtility.HtmlEncode(txtTcKimlikNo.Text),
                        model.name.ToUpper(clsCulture),
                        model.surname.ToUpper(clsCulture),
                        Convert.ToDateTime(mernisSorguSonuc.MernisDogumTarihi).ToString("dd/MM/yyyy"),
                        mernisSorguSonuc.MernisDogumYeri.ToUpper(clsCulture),
                        mernisSorguSonuc.MernisCinsiyet,
                        mernisSorguSonuc.MernisMedeniHal,
                        model.email.Replace("'", " "),
                        model.password,
                        model.IP);

                    if (sonuc.BasariliMi)
                    {
                        //Mail Gönderiliyor
                        sResult = wsHelper.SendMail(model);

                        //Mail gönderilebiliyorsa
                        if (sResult == "OK")
                        {
                            resultInfo = "Kayıt yapıldı.Şifreniz mail adresinize gönderildi." +
                                         "Giriş sayfasından şifrenizi kullanarak giriş yapabilirsiniz.";
                        }
                        //Mail gönderilemezse
                        else
                        {
                            resultInfo = "Kayıt yapıldı ancak e-posta adresinize şifreniz gönderilemedi. " +
                                         "Lütfen mail adresinizi kontrol edip şifreniz gelmedi ise Şifremi Unuttum menüsünden" +
                                         "şifrenizin yeniden gönderilmesini deneyiniz!";

                            db.AddPersonelSqlLog("-1", model.tckn + " __ " + sResult, model.IP);
                        }

                        return(new ServiceResult <object>()
                        {
                            isSuccessfull = true, ResultCode = 0, ResultData = null, ResultExplanation = resultInfo
                        });
                    }
                    else
                    {
                        if (sonuc.HataBilgi != null)
                        {
                            db.AddPersonelSqlLog("-1", model.tckn + " __ " + sResult, model.IP);
                        }
                        resultInfo = "Kayıt yapılamadı. Hata oluştu.";

                        return(new ServiceResult <object>()
                        {
                            isSuccessfull = true, ResultCode = 1, ResultData = null, ResultExplanation = resultInfo
                        });
                    }
                }
                else if (iTcStatus == 2)
                {
                    resultInfo = @"Girilen kimlik bilgileri ile TC Kimlik numarası uyumlu değil.
                                      Bilgilerinizi iyice kontrol ettikten sonra hala aynı hatayı alıyorsanız.
                                      Nüfus bilgileri güncelliğini yitirmiş olabileceğinden Nüfus Müdürlüğünden doğru 
                                      bilgilerinizi gösteren Nüfus Cüzdanı Sureti alıp güncel bilgilerle başvurmanız gerekmektedir!";


                    return(new ServiceResult <object>()
                    {
                        isSuccessfull = true, ResultCode = 1, ResultData = null, ResultExplanation = resultInfo
                    });
                }
                else // (iTcStatus == 0) defalut 0 dönüyor
                {
                    resultInfo = @"Girilen TC Kimlik Kartı/Belgesi Bilgileri Hatalıdır!
                              Yeni Kimlik Kartınız var ise {Yeni Kimlik Sahibiyim} seçilerek Yeni Kimlik Kartı Bilgileri ile başvuruda bulunulmalıdır.
                              Yeni Kimlik Kartına Başvurmuş iseniz ve kimlik kartınızı teslim almadıysanız Geçici Kimlik Belgesi üzerinde yer alan bilgiler ile başvuruda bulunmanız gerekmektedir.
                              Eski Kimlik Kartınız mevcut ve geçerli ise girdiğiniz bilgileri dikkatlice kontrol ediniz                            
                              Belirtilen Hususlara Dikkat ederek Lütfen Tekrar Deneyiniz.";

                    return(new ServiceResult <object>()
                    {
                        isSuccessfull = true, ResultCode = 1, ResultData = null, ResultExplanation = resultInfo
                    });
                }
            }
            catch (Exception exc)
            {
                return(new ServiceResult <object>()
                {
                    isSuccessfull = false, ResultCode = 2, ResultData = null, ResultExplanation = exc.Message
                });
            }
        }