Пример #1
0
        public ActionResult LoginControl(LoginParamDto model)
        {
            if (Accesses.IsLogin() != ForbiddenAccessTypes.UnForbidden || Accesses.IsLogin() == ForbiddenAccessTypes.IsLogout)
            {
                var person = _personService.GetPerson(model.UserName, model.Password);
                if (person == null)
                {
                    return(AjaxMessage("Uyarı", "Yanlış kullanıcı adı veya şifre", MessageTypes.danger));
                }
                if (person.IsActive)
                {
                }
                else
                {
                    return(AjaxMessage("Uyarı", "Girş İzniniz Yoktur", MessageTypes.danger));
                }
                var ticket = new FormsAuthenticationTicket(1,
                                                           EnDeCode.Encrypt(person.Id.ToString(), StaticParams.SifrelemeParametresi),
                                                           DateTime.Now,
                                                           model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1),
                                                           model.RememberMe,
                                                           EnDeCode.Encrypt(person.Id.ToString(), StaticParams.SifrelemeParametresi),
                                                           FormsAuthentication.FormsCookiePath);
                string encTicket      = FormsAuthentication.Encrypt(ticket);
                var    cookie         = new HttpCookie(".u", encTicket);
                var    personInitials = new HttpCookie("_initials", UtilityManager.Base64Encode(person.Initials));
                var    personFullName = new HttpCookie("_fullname", UtilityManager.Base64Encode(person.Name + " " + person.Surname));
                var    personEmail    = new HttpCookie("_email", UtilityManager.Base64Encode(person.Email));
                var    unitId         = new HttpCookie("_ui", UtilityManager.Base64Encode(person.UnitId.ToString()));

                cookie.HttpOnly         = true;
                personInitials.HttpOnly = true;
                personFullName.HttpOnly = true;
                personEmail.HttpOnly    = true;
                unitId.HttpOnly         = true;

                cookie.Expires         = model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1);
                personInitials.Expires = model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1);
                personFullName.Expires = model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1);
                personEmail.Expires    = model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1);
                unitId.Expires         = model.RememberMe ? DateTime.Now.AddYears(1) : DateTime.Now.AddDays(1);

                Response.Cookies.Add(cookie);
                Response.Cookies.Add(personInitials);
                Response.Cookies.Add(personFullName);
                Response.Cookies.Add(personEmail);
                Response.Cookies.Add(unitId);
                return(Json("/Dashboard", JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(AjaxMessage(MessageTitleTypes.Uyari, "Yanlış kullanıcı adı veya şifre", MessageTypes.danger));
            }
        }
Пример #2
0
        private void pictureBox1_Click(object sender, EventArgs e)
        {
            //检查txt是否为空
            if (txtDnldLink.Text == null || txtDnldLink.Text.Equals(""))
            {
                MessageBox.Show("please parse the link !", "error");
                return;
            }

            //检查格式
            string[] splits = txtDnldLink.Text.Trim().Split('_');
            if (splits.Length == 4)
            {
                if (splits[1].Length == 10 && splits[3].Length == 8)
                {
                }
                else
                {
                    MessageBox.Show("link format error !", "message");
                    return;
                }
            }
            else
            {
                MessageBox.Show("link format error !", "message");
                return;
            }

            //检查txtstring 是否符合规范
            try
            {
                string dnldLink = EnDeCode.decodeLink(txtDnldLink.Text.Trim());
                MyLogger.WriteLine(dnldLink);

                string[] splits2 = dnldLink.Split('_');
                Trial    tmp     = service.getTrialByUidDate(splits2[0], splits2[1]);
                trial.TrUserId   = tmp.TrUserId;
                trial.TrOperator = tmp.TrOperator;
                trial.TrDate     = tmp.TrDate;
                trial.TrInfo     = tmp.TrInfo;
                Console.WriteLine(trial);

                Close();
                DialogResult = DialogResult.OK;
            }
            catch {
                MessageBox.Show("decode link failed !", "error");
                return;
            }
        }
Пример #3
0
        public Person GetPerson(string userName, string password)
        {
            var result = _personRepository.GetAll().Where(p => p.UserName == userName).SingleOrDefault();

            if (result == null)
            {
                return(null);
            }
            if (EnDeCode.Decrypt(result.Password, StaticParams.SifrelemeParametresi) == password)
            {
                return(result);
            }
            else
            {
                return(null);
            }
        }
Пример #4
0
 public static ForbiddenAccessTypes IsLogin()
 {
     try
     {
         var Cookies = HttpContext.Current.Request.Cookies;
         if (CookieKeys.Any(p => Cookies[p] == null || string.IsNullOrEmpty(Cookies[p].Value) || string.IsNullOrEmpty(UtilityManager.Base64Decode(Cookies[p].Value))))
             return ForbiddenAccessTypes.IsLogout;
         var forbiddenType = ForbiddenAccessTypes.PersonId;
         try
         {
             var personId = JsonConvert.DeserializeObject<string>(EnDeCode.Decrypt(FormsAuthentication.Decrypt(HttpContext.Current.Request.Cookies[".u"].Value).Name, StaticParams.SifrelemeParametresi));
             forbiddenType = ForbiddenAccessTypes.UnForbidden;
             return forbiddenType;
         }
         catch (Exception ex) { return forbiddenType; }
     }
     catch (Exception ex) { return ForbiddenAccessTypes.IsLogout; }
 }
Пример #5
0
        public UploadRecord(Trial trial, Color bkColor, Form fm, FolderBrowserDialog dialog, Socket sock)
        {
            this.trial = trial;
            InitializeComponent();
            BackColor    = bkColor;
            this.bkColor = bkColor;

            parent     = (FmMain)fm;
            dnldDialog = dialog;
            dnldSock   = sock;

            labPltfm.Text = trial.TrPltfmName;
            labPdct.Text  = trial.TrPdctName;
            labDate.Text  = TimeHandle.milSecondsToDatetime(long.Parse(trial.TrDate)).ToString();
            labInfo.Text  = trial.TrInfo;

            link = EnDeCode.encodeLink(trial.TrUserId + "_" + trial.TrDate);
        }
Пример #6
0
        protected void Kaydetbtn_Click(object sender, EventArgs e)
        {
            baglanti.ConnectionString = adres;
            baglanti.Open();

            string     sql = "insert into common.Person values (@UnitId,@UserName,@kisa, @Name,@Suname,@Password, @Email, 2332,@booll, null)";
            SqlCommand cmd = new SqlCommand(sql, baglanti);

            cmd.Parameters.AddWithValue("@Name", adi.Value);
            cmd.Parameters.AddWithValue("@Suname", soyadi.Value);
            cmd.Parameters.AddWithValue("@UserName", kullaniciAdi.Value);
            cmd.Parameters.AddWithValue("@Email", email.Value);
            cmd.Parameters.AddWithValue("@UnitId", unitlist.SelectedItem.Value);
            cmd.Parameters.AddWithValue("@Password", EnDeCode.Encrypt(sifre.Value, StaticParams.SifrelemeParametresi));
            cmd.Parameters.AddWithValue("@booll", "False");
            cmd.Parameters.AddWithValue("@kisa", adi.Value.Substring(0, 1).ToUpper() + soyadi.Value.Substring(0, 1).ToUpper());
            cmd.ExecuteNonQuery();
            baglanti.Close();
            Response.Redirect("/Login/Index");
        }
Пример #7
0
        private void upload()
        {
            int transMaxLen = 1024 * 512; //512k

            byte[] msgBuf  = new byte[200];
            byte[] fileBuf = null;

            string msg = null;

            FileInfo file = new FileInfo(zipFileName);

            //首先传输文件头 file: # file_len # file_name #
            //接收response  elif: # file_name #
            msg    = "file:#" + file.Length + "#" + file.Name + "#";
            msgBuf = Encoding.UTF8.GetBytes(msg.ToCharArray());
            upldSock.Send(msgBuf);

            ///等待服务端接收该文件的 response
            while (!ifRecv)
            {
                try { Thread.Sleep(500); }
                catch { }
                //进行一些超时处理
                //如果超时,continue
                MyLogger.WriteLine("wait recv response .....");
            }

            //然后是数据
            MyLogger.WriteLine("开始传输:" + file.Name + " 数据 \n");

            //上传进度条
            FmProgress upldProg = new FmProgress(this, file.Length, "upld");

            upldProg.Show();

            using (FileStream fs = new FileStream(file.FullName, FileMode.Open))
            {
                //文件一次传输可以完成
                if (file.Length < transMaxLen)
                {
                    fileBuf = new byte[file.Length];
                    fs.Read(fileBuf, 0, (int)file.Length);

                    //设置立即发送
                    upldSock.SetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.NoDelay, true);
                    upldSock.Send(fileBuf);
                    MyLogger.WriteLine(file.Name + "一次 文件传输完成!" + "\n");

                    //medial progress
                    upldProg.updateProgValue(fileBuf.Length, "");

                    try { Thread.Sleep(500); }
                    catch { Console.WriteLine("sleep error!"); }

                    //发送文件结束标志
                    msg    = "end:#" + file.Name + "#";
                    msgBuf = Encoding.UTF8.GetBytes(msg.ToCharArray());
                    upldSock.Send(msgBuf);
                }
                //文件过大,需要分段传输
                else
                {
                    long transed = 0;
                    fileBuf = new byte[transMaxLen];
                    long fileLen = file.Length;
                    int  times   = (int)(fileLen / transMaxLen); //整数次
                    int  leftLen = (int)(fileLen % transMaxLen); //剩下的字节数

                    //发送整数次
                    for (int i = 1; i <= times; i++)
                    {
                        fs.Read(fileBuf, 0, transMaxLen);
                        upldSock.Send(fileBuf);
                        transed += fileBuf.Length;

                        //进度条更新
                        upldProg.updateProgValue(transed, "");
                    }

                    //发送剩余的字节数
                    fileBuf = new byte[leftLen];
                    fs.Read(fileBuf, 0, leftLen);
                    transed += fileBuf.Length;
                    upldSock.Send(fileBuf);

                    upldProg.updateProgValue(transed, "");

                    //设置延时,使剩余文件信息和 文件结束标志分开发送
                    try { Thread.Sleep(500); }
                    catch { Console.WriteLine("sleep error!"); }

                    MyLogger.WriteLine(file.Name + " 数据传输完成!\n");

                    //最后是 end:# file_name # file_left #
                    //接收response dne: # file_name #
                    msg    = "end:#" + file.Name + "#";
                    msgBuf = Encoding.UTF8.GetBytes(msg.ToCharArray());
                    upldSock.Send(msgBuf);
                    MyLogger.WriteLine("发送文件结束符:" + msg);

                    //结束
                    fs.Close();
                }
                //MessageBox.Show("文件上传成功!","message");

                if (isNewUpld)
                {
                    using (FileStream fs1 = new FileStream(upldPath + "\\.upldhist.hist", FileMode.Create))
                    {
                        using (StreamWriter sr1 = new StreamWriter(fs1))
                        {
                            sr1.WriteLine("pltfmpdct=" + trialInfo.Pltfm + "_" + trialInfo.Pdct);
                            sr1.WriteLine("token=" + EnDeCode.encode(trialInfo.Unique));
                        }
                    }
                }
                compressCode = ContantInfo.Compress.WAIT; // -1 是原始状态, 0 表示出错, 1 表示正常
            } // using(FileStreaam fs = new FileStream())

            try
            {
                File.Delete(zipFileName);
                MyLogger.WriteLine("zip文件删除成功!\n");
            }
            catch { MyLogger.WriteLine("zip文件删除异常!\n"); }
        }
Пример #8
0
        private void btBrowser_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog dia = new FolderBrowserDialog();

            if (dia.ShowDialog() == DialogResult.OK)
            {
                upldPath       = dia.SelectedPath;
                txtFolder.Text = upldPath;

                int checkUpldDirCode = 0;
                if (FileHandle.checkUpldDir(upldPath, ref checkUpldDirCode))
                {
                    #region 检查upldhist.hist
                    FileInfo histFile = new FileInfo(upldPath + "\\.upldhist.hist");
                    if (histFile.Exists)
                    {
                        isNewUpld = false; //不是新的上传
                        using (FileStream fs = new FileStream(histFile.FullName, FileMode.Open))
                        {
                            using (StreamReader sr = new StreamReader(fs))
                            {
                                string line = "";
                                while ((line = sr.ReadLine()) != null)
                                {
                                    if (line.StartsWith("token="))
                                    {
                                        upldHistStr = line.Split('=')[1];
                                    }
                                    if (line.StartsWith("pltfmpdct="))
                                    {
                                        pltfmpdctStr = line.Split('=')[1];
                                    }
                                }
                            }
                        }
                        //处理upldHistStr 还原出真实信息
                        if (!upldHistStr.Equals("")) // userid_datestring
                        {
                            try
                            {
                                upldHistStr         = EnDeCode.decode(upldHistStr);
                                trialInfo.Activator = upldHistStr.Split('_')[0];
                                trialInfo.Unique    = upldHistStr;
                            }
                            catch (Exception ex)
                            {
                                isNewUpld = true;
                                MyLogger.WriteLine(ex.Message);
                            }
                        }
                        else //
                        {
                            isNewUpld = true;
                        }

                        if (!pltfmpdctStr.Equals(""))
                        {
                            trialInfo.Pltfm = pltfmpdctStr.Split('_')[0];
                            trialInfo.Pdct  = pltfmpdctStr.Split('_')[1];
                        }
                        else
                        {
                            isNewUpld = true;
                        }
                    }
                    #endregion

                    //填写Trial info
                    FmWriteInfo fm = new FmWriteInfo(false, service, ref trialInfo, isNewUpld);
                    if (fm.ShowDialog() == DialogResult.OK)
                    {
                        labActivator.Text = trialInfo.Activator;
                        labOperator.Text  = trialInfo.Operator;
                        labPltfm.Text     = trialInfo.Pltfm;
                        labPdct.Text      = trialInfo.Pdct;
                        labInfo.Text      = trialInfo.Info;
                        labOther.Text     = trialInfo.Other;
                        groupInfo.Visible = true;
                    }
                    else
                    {
                        txtFolder.Text    = "";
                        groupInfo.Visible = false;
                    }
                }
                else
                {
                    txtFolder.Text = "";
                    MessageBox.Show("upload dir error:\r\n" + ContantInfo.UpldDir.upldDirErrDict[checkUpldDirCode], "message");
                }
            }
            else
            {
                MyLogger.WriteLine("Upload Canceld !");
            }
        }
Пример #9
0
        public static void SendMail(string title, string body, List <string> tos)
        {
            MailMessage mail       = new MailMessage();
            SmtpClient  SmtpServer = new SmtpClient(Resources.Parameter.SistemMailSmtpClient);

            mail.From = new MailAddress(Resources.Parameter.SistemMail, Resources.Parameter.SistemMailBaslik);
            foreach (var item in tos)
            {
                mail.To.Add(item);
            }
            mail.Subject           = title;
            mail.Body              = body;
            mail.IsBodyHtml        = true;
            SmtpServer.Port        = 587;
            SmtpServer.Credentials = new System.Net.NetworkCredential(Resources.Parameter.SistemMail, EnDeCode.Decrypt(Resources.Parameter.SistemMailSifre, StaticParams.SifrelemeParametresi));
            SmtpServer.Send(mail);
        }