Esempio n. 1
0
 void LoadUsers()
 {
     HandleData(() =>
     {
         dataGridView1.DataSource = BLLOperate.GetItems <TB_User>().Where(p => p.Id != GlobalData.Current.CurrentUser.Id).ToList();
     }, s => MessageBox.Show(this, s));
 }
Esempio n. 2
0
        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            var user = dataGridView1.Rows[e.RowIndex].DataBoundItem as TB_User;

            if (e.ColumnIndex < 0 || dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null)
            {
                return;
            }
            string buttonText = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();

            HandleData(() =>
            {
                switch (buttonText)
                {
                case "重置密码":
                    var succeed = BLLOperate.ModifyPassword(user.Id, "1");
                    MessageBox.Show(this, succeed ? "重置成功!" : "重置失败");
                    break;

                case "删除用户":
                    var id = BLLOperate.DeleteItem <TB_User>(user.Id);
                    MessageBox.Show(this, id > 0 ? "删除成功!" : "删除失败");
                    LoadUsers();
                    break;
                }
            }, s => MessageBox.Show(this, s));
        }
Esempio n. 3
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     if (VerifyRequired(txtName, lbMessage, "名称"))
     {
         return;
     }
     if (BLLOperate.IsExistContactPersonGroupName(ContactPersonGroup.Id, GlobalData.Current.CurrentUser.Id, txtName.Text) ||
         txtName.Text.Trim().Equals("未分组"))
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "该联系人组已存在";
         return;
     }
     HandleData(() =>
     {
         ContactPersonGroup.Name = txtName.Text;
         ContactPersonGroup.Id   = BLLOperate.AddOrModifyItem <TB_ContactPersonGroup>(ContactPersonGroup);
         DialogResult            = DialogResult.OK;
         Close();
     }, (s) =>
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "操作失败";
     });
 }
Esempio n. 4
0
 /// <summary>
 /// 加载数据源
 /// </summary>
 /// <param name="action"></param>
 private void LoadData(Action action = null)
 {
     HandleData(() =>
     {
         _contactPersonGroups = BLLOperate.GetContactPersonGroupsByUId(GlobalData.Current.CurrentUser.Id);
         _contactPersons      = BLLOperate.GetContactPersonsByUId(GlobalData.Current.CurrentUser.Id);
         if (action != null)
         {
             action();
         }
     }, s => MessageBox.Show(this, s));
 }
Esempio n. 5
0
 /// <summary>
 /// 删除照片
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void MIDeletePhoto_Click(object sender, EventArgs e)
 {
     HandleData(() =>
     {
         foreach (ListViewItem item in listView1.SelectedItems)
         {
             var gallery = item.Tag as TB_Gallery;
             BLLOperate.DeleteItem <TB_Gallery>(gallery.Id);
             listView1.Items.Remove(listView1.SelectedItems[0]);
         }
     }, s => MessageBox.Show(this, s));
 }
Esempio n. 6
0
        private void btnRegister_Click(object sender, EventArgs e)
        {
            var oldPassword    = txtOldPassword.Text;
            var newPassword    = txtNewPassword.Text;
            var affirmPassword = txtAffirmPassword.Text;

            if (VerifyRequired(txtOldPassword, lbMessage, "旧密码") ||
                VerifyRequired(txtNewPassword, lbMessage, "新密码") ||
                VerifyStringLength(txtNewPassword, 16, lbMessage, "新密码"))
            {
                return;
            }
            if (oldPassword.Trim() != GlobalData.Current.CurrentUser.Password)
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "旧密码不匹配";
                txtOldPassword.Focus();
                return;
            }
            if (oldPassword == newPassword)
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "新密码不能与旧密码相同";
                txtNewPassword.Focus();
                return;
            }
            if (affirmPassword != newPassword)
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "确认密码与新密码不符";
                txtAffirmPassword.Focus();
                return;
            }
            HandleData(() =>
            {
                var succeed = BLLOperate.ModifyPassword(GlobalData.Current.CurrentUser.Id, newPassword);
                if (succeed)
                {
                    GlobalData.Current.CurrentUser.Password = newPassword;
                    MessageBox.Show(this, "修改成功!");
                    Close();
                }
                else
                {
                    lbMessage.ForeColor = Color.Red;
                    lbMessage.Text      = "修改失败";
                }
            }, s =>
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "修改失败";
            });
        }
Esempio n. 7
0
 /// <summary>
 /// 删除联系人
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void DeleteContactPerson(object sender, EventArgs e)
 {
     if (tvItems.SelectedNode != null)
     {
         var contactPerson = tvItems.SelectedNode.Tag as TB_ContactPerson;
         HandleData(() =>
         {
             BLLOperate.DeleteItem <TB_ContactPerson>(contactPerson.Id);
             tvItems.SelectedNode.Parent.Nodes.Remove(tvItems.SelectedNode);
             GetContactPersonsByUIdAndTypeId(contactPerson.UType);
         }, s => MessageBox.Show(this, s));
     }
 }
Esempio n. 8
0
        /// <summary>
        /// 注册
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnRegister_Click(object sender, EventArgs e)
        {
            var uName          = txtUName.Text;
            var password       = txtPassword.Text;
            var affirmPassword = txtAffirmPassword.Text;

            if (VerifyRequired(txtUName, lbMessage, "用户名") ||
                VerifyRequired(txtPassword, lbMessage, "密码") ||
                VerifyStringLength(txtUName, 16, lbMessage, "用户名") ||
                VerifyStringLength(txtPassword, 16, lbMessage, "密码"))
            {
                return;
            }
            if (affirmPassword != password)
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "确认密码与密码不符";
                txtAffirmPassword.Focus();
                return;
            }
            if (CheckUserName())
            {
                return;
            }
            HandleData(() =>
            {
                var user = BLLOperate.Register(new TB_User
                {
                    UName    = uName.Trim(),
                    Name     = "",
                    Password = password.Trim()
                });
                if (user != null)
                {
                    GlobalData.Current.CurrentUser = user;
                    MessageBox.Show(this, string.Format("注册成功,欢迎{0}登录!", user.UName.ToLower()));
                    DialogResult = DialogResult.OK;
                    Close();
                }
                else
                {
                    lbMessage.ForeColor = Color.Red;
                    lbMessage.Text      = "注册失败";
                }
            }, s =>
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "注册失败";
            });
        }
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (VerifyRequired(userInfo.TxtName, lbMessage, "名称") ||
                VerifyStringLength(userInfo.TxtName, 20, lbMessage, "名称") ||
                VerifyStringLength(userInfo.TxtEmail, 40, lbMessage, "邮箱") ||
                VerifyStringLength(userInfo.TxtAddress, 80, lbMessage, "地址") ||
                VerifyCallPhone(userInfo.TxtCallPhone, lbMessage, "手机") ||
                VerifyTelePhone(userInfo.TxtTelephone, lbMessage, "电话") ||
                VerifyEmail(userInfo.TxtEmail, lbMessage, "邮箱"))
            {
                return;
            }
            if (VerifyRequired(userInfo.TxtCallPhone, lbMessage, "手机") && VerifyRequired(userInfo.TxtTelephone, lbMessage, "电话"))
            {
                return;
            }
            if (DateTime.Compare(userInfo.DtBirthday.Value, DateTime.Now) > 0)
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "生日不得晚于今天";
                userInfo.DtBirthday.Focus();
            }

            if (BLLOperate.IsExistContactPersonName(ContactPerson.Id, GlobalData.Current.CurrentUser.Id, userInfo.TxtName.Text))
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "该联系人已存在";
                return;
            }
            HandleData(() =>
            {
                ContactPerson.Name      = userInfo.TxtName.Text;
                ContactPerson.Email     = userInfo.TxtEmail.Text;
                ContactPerson.Address   = userInfo.TxtAddress.Text;
                ContactPerson.Callphone = userInfo.TxtCallPhone.Text;
                ContactPerson.Telephone = userInfo.TxtTelephone.Text;
                ContactPerson.Birthday  = userInfo.DtBirthday.Text;
                ContactPerson.Sex       = (int)userInfo.CbSex.SelectedValue;
                ContactPerson.Favicon   = userInfo.ImageData;
                ContactPerson.UType     = (int)cbGroups.SelectedValue;
                ContactPerson.Id        = BLLOperate.AddOrModifyItem <TB_ContactPerson>(ContactPerson);
                DialogResult            = DialogResult.OK;
                Close();
            }, (s) =>
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "操作失败";
            });
        }
Esempio n. 10
0
 /// <summary>
 /// 获取联系人
 /// </summary>
 private void GetContactPersonsByUIdAndTypeId(int type)
 {
     HandleData(() =>
     {
         _gridViewContactPersons = new List <TB_ContactPerson>();
         if (type == 0)
         {
             _gridViewContactPersons = BLLOperate.GetContactPersonsByUId(GlobalData.Current.CurrentUser.Id);
         }
         else
         {
             _gridViewContactPersons = BLLOperate.GetContactPersonsByUIdAndTypeId(GlobalData.Current.CurrentUser.Id, type);
         }
         cDataGridView.DataSource = _gridViewContactPersons;
     }, s => MessageBox.Show(this, s));
 }
Esempio n. 11
0
 /// <summary>
 /// 删除联系人组
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void DeleteGroup(object sender, EventArgs e)
 {
     if (tvItems.SelectedNode != null)
     {
         var contactPersonGroup = tvItems.SelectedNode.Tag as TB_ContactPersonGroup;
         HandleData(() =>
         {
             BLLOperate.DeleteItem <TB_ContactPersonGroup>(contactPersonGroup.Id);
             if (tvItems.SelectedNode.Parent == null)
             {
                 tvItems.Nodes.Remove(tvItems.SelectedNode);
             }
             else
             {
                 tvItems.SelectedNode.Parent.Nodes.Remove(tvItems.SelectedNode);
             }
         }, s => MessageBox.Show(this, s));
     }
 }
Esempio n. 12
0
        /// <summary>
        /// 添加照片
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void MIAddPhoto_Click(object sender, EventArgs e)
        {
            var openFileDialog = new OpenFileDialog {
                Filter = "图片|*.jpg;*.png;", Multiselect = true
            };

            if (openFileDialog.ShowDialog(this) == DialogResult.OK)
            {
                if (openFileDialog.FileNames.Any())
                {
                    foreach (var fileName in openFileDialog.FileNames)
                    {
                        if (BLLOperate.IsExistGalleryName(0, GlobalData.Current.CurrentUser.Id, Path.GetFileName(fileName)))
                        {
                            continue;
                        }
                        using (var fs = new FileStream(fileName, FileMode.Open))
                        {
                            var image = new byte[fs.Length];
                            fs.Read(image, 0, (int)fs.Length);
                            if (image.Length != 0)
                            {
                                HandleData(() =>
                                {
                                    var photo = new TB_Gallery()
                                    {
                                        UId    = GlobalData.Current.CurrentUser.Id,
                                        Name   = Path.GetFileName(fileName),
                                        GImage = image
                                    };
                                    BLLOperate.AddOrModifyItem <TB_Gallery>(photo);
                                    var myImage = Image.FromStream(fs);
                                    listView1.BeginUpdate();
                                    listView1.LargeImageList.Images.Add(myImage);
                                    listView1.Items.Add(photo.Name, listView1.LargeImageList.Images.Count - 1).Tag = photo;
                                    listView1.EndUpdate();
                                }, s => MessageBox.Show(this, s));
                            }
                        }
                    }
                }
            }
        }
Esempio n. 13
0
 /// <summary>
 /// 登录
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnLogin_Click(object sender, EventArgs e)
 {
     BLLOperate.CreateAdminUser();
     if (VerifyRequired(txtUName))
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "用户名不能为空";
         return;
     }
     if (VerifyRequired(txtPassword))
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "密码不能为空";
         return;
     }
     HandleData(() =>
     {
         TB_User user = BLLOperate.UserLogin(txtUName.Text, txtPassword.Text);
         if (user != null)
         {
             GlobalData.Current.CurrentUser               = user;
             GlobalData.Current.UserConfig.IsSaveName     = cbRemindName.Checked;
             GlobalData.Current.UserConfig.IsSavePassword = cbRemindPassword.Checked;
             GlobalData.Current.UserConfig.UserName       = txtUName.Text;
             GlobalData.Current.UserConfig.Password       = txtPassword.Text;
             SQLiteOperate.ModifyUserConfig(GlobalData.Current.UserConfig);
             MessageBox.Show(this, string.Format("欢迎{0}登录!", string.IsNullOrEmpty(user.Name) ? user.UName : user.Name));
             Hide();
             var main = new Main();
             main.Show();
         }
         else
         {
             lbMessage.ForeColor = Color.Red;
             lbMessage.Text      = "登录失败,用户名或密码错误";
         }
     }, s =>
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "登录失败,数据访问出错";
     });
 }
Esempio n. 14
0
 /// <summary>
 /// 删除选中
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnDelSelected_Click(object sender, EventArgs e)
 {
     if (cDataGridView.SelectedRows.Count == 0)
     {
         return;
     }
     if (MessageBox.Show(this, "确定删除选中的联系人?", "删除联系人", MessageBoxButtons.OKCancel) == DialogResult.OK)
     {
         HandleData(() =>
         {
             foreach (DataGridViewRow selectedRow in cDataGridView.SelectedRows)
             {
                 var contactPerson = selectedRow.DataBoundItem as TB_ContactPerson;
                 BLLOperate.DeleteItem <TB_ContactPerson>(contactPerson.Id);
             }
             MessageBox.Show(this, "删除成功!");
             tvItems_AfterSelect(null, null);
         }, s => MessageBox.Show(this, s));
     }
 }
Esempio n. 15
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     if (VerifyRequired(userInfo.TxtName, lbMessage, "名称") ||
         VerifyStringLength(userInfo.TxtName, 20, lbMessage, "名称") ||
         VerifyStringLength(userInfo.TxtEmail, 40, lbMessage, "邮箱") ||
         VerifyStringLength(userInfo.TxtAddress, 80, lbMessage, "地址") ||
         VerifyCallPhone(userInfo.TxtCallPhone, lbMessage, "手机") ||
         VerifyTelePhone(userInfo.TxtTelephone, lbMessage, "电话") ||
         VerifyEmail(userInfo.TxtEmail, lbMessage, "邮箱"))
     {
         return;
     }
     HandleData(() =>
     {
         var user = new TB_User
         {
             Id        = GlobalData.Current.CurrentUser.Id,
             UName     = GlobalData.Current.CurrentUser.UName,
             Password  = GlobalData.Current.CurrentUser.Password,
             UType     = GlobalData.Current.CurrentUser.UType,
             Name      = userInfo.TxtName.Text,
             Email     = userInfo.TxtEmail.Text,
             Address   = userInfo.TxtAddress.Text,
             Callphone = userInfo.TxtCallPhone.Text,
             Telephone = userInfo.TxtTelephone.Text,
             Birthday  = userInfo.DtBirthday.Text,
             Sex       = (int)userInfo.CbSex.SelectedValue,
             Favicon   = userInfo.ImageData
         };
         user.Id = BLLOperate.AddOrModifyItem <TB_User>(user);
         GlobalData.Current.CurrentUser = user;
         DialogResult = DialogResult.OK;
         Close();
     }, (s) =>
     {
         lbMessage.ForeColor = Color.Red;
         lbMessage.Text      = "操作失败";
     });
 }
Esempio n. 16
0
        private void cDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            var contactPerson = cDataGridView.Rows[e.RowIndex].DataBoundItem as TB_ContactPerson;

            if (e.ColumnIndex < 0 || cDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value == null)
            {
                return;
            }
            string buttonText = cDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();

            HandleData(() =>
            {
                switch (buttonText)
                {
                case "修改":
                    var g = new ContactPersonOperate()
                    {
                        Text          = "修改联系人",
                        ContactPerson = contactPerson
                    };
                    if (g.ShowDialog(this) == DialogResult.OK)
                    {
                        tvItems_AfterSelect(null, null);
                    }
                    break;

                case "删除":
                    if (MessageBox.Show(this, "确定删除联系人?", "删除联系人", MessageBoxButtons.OKCancel) == DialogResult.OK)
                    {
                        var id = BLLOperate.DeleteItem <TB_ContactPerson>(contactPerson.Id);
                        MessageBox.Show(this, id > 0 ? "删除成功!" : "删除失败");
                        tvItems_AfterSelect(null, null);
                    }
                    break;
                }
            }, s => MessageBox.Show(this, s));
        }
Esempio n. 17
0
        /// <summary>
        /// 检查用户名
        /// </summary>
        /// <returns></returns>
        private bool CheckUserName()
        {
            bool isExist = false;

            HandleData(() =>
            {
                if (BLLOperate.CheckUserName(txtUName.Text.Trim()))
                {
                    lbMessage.ForeColor = Color.Red;
                    lbMessage.Text      = "该用户名已被占用";
                    txtUName.Focus();
                    isExist = true;
                    return;
                }
                lbMessage.Text      = "该用户名可用";
                lbMessage.ForeColor = Color.Green;
            }, s =>
            {
                lbMessage.ForeColor = Color.Red;
                lbMessage.Text      = "检查用户名失败";
                isExist             = true;
            });
            return(isExist);
        }
 private void ContactPersonOperate_Load(object sender, EventArgs e)
 {
     userInfo.TxtName.Text      = ContactPerson.Name;
     userInfo.TxtEmail.Text     = ContactPerson.Email;
     userInfo.TxtAddress.Text   = ContactPerson.Address;
     userInfo.TxtCallPhone.Text = ContactPerson.Callphone;
     userInfo.TxtTelephone.Text = ContactPerson.Telephone;
     userInfo.DtBirthday.Text   = string.IsNullOrEmpty(ContactPerson.Birthday) ? DateTime.Now.Date.ToShortDateString() : ContactPerson.Birthday;
     if (ContactPerson.Favicon != null)
     {
         using (var myStream = new MemoryStream())
         {
             foreach (byte a in ContactPerson.Favicon)
             {
                 myStream.WriteByte(a);
             }
             var myImage = Image.FromStream(myStream);
             myStream.Close();
             userInfo.PbFavicon.Image = myImage;
         }
     }
     userInfo.CbSex.SelectedValue = ContactPerson.Sex;
     HandleData(() =>
     {
         var contactPersonGroups = new List <TB_ContactPersonGroup>();
         contactPersonGroups.Add(new TB_ContactPersonGroup {
             Id = 0, Name = "未分组"
         });
         var groups = BLLOperate.GetContactPersonGroupsByUId(GlobalData.Current.CurrentUser.Id);
         contactPersonGroups.AddRange(groups);
         cbGroups.DataSource    = contactPersonGroups;
         cbGroups.DisplayMember = "Name";
         cbGroups.ValueMember   = "Id";
         cbGroups.SelectedValue = ContactPerson.UType;
     });
 }
Esempio n. 19
0
        /// <summary>
        /// 转移分组
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void cbGroup_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cDataGridView.SelectedRows.Count == 0)
            {
                return;
            }
            var group = cbGroup.SelectedItem as TB_ContactPersonGroup;

            if (group == null)
            {
                return;
            }
            HandleData(() =>
            {
                foreach (DataGridViewRow selectedRow in cDataGridView.SelectedRows)
                {
                    var contactPerson   = selectedRow.DataBoundItem as TB_ContactPerson;
                    contactPerson.UType = group.Id;
                    BLLOperate.AddOrModifyItem <TB_ContactPerson>(contactPerson);
                }
                MessageBox.Show(this, "转移成功!");
                tvItems_AfterSelect(null, null);
            }, s => MessageBox.Show(this, s));
        }
Esempio n. 20
0
        private void ReadData(string fileName)
        {
            using (var stream = new FileStream(fileName, FileMode.Open))
            {
                // 把 Stream 转换成 byte[]
                var bytes = new byte[stream.Length];
                stream.Read(bytes, 0, bytes.Length);
                // 设置当前流的位置为流的开始
                stream.Seek(0, SeekOrigin.Begin);
                string content = System.Text.Encoding.Default.GetString(bytes, 0, bytes.Length);
                if (string.IsNullOrEmpty(content))
                {
                    return;
                }

                var coords = content.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
                var count  = coords.Count();
                if (count <= 1)
                {
                    return;
                }

                var line   = coords[0];
                var values = line.Split(',');
                if (!values.Contains("姓名"))
                {
                    return;
                }

                var nameIndex      = Array.IndexOf(values, "姓名");
                var utypeIndex     = Array.IndexOf(values, "组类别");
                var sexIndex       = Array.IndexOf(values, "性别");
                var birthdayIndex  = Array.IndexOf(values, "生日");
                var callphoneIndex = Array.IndexOf(values, "手机");
                var telephoneIndex = Array.IndexOf(values, "电话");
                var emailIndex     = Array.IndexOf(values, "邮箱");
                var addressIndex   = Array.IndexOf(values, "地址");
                var contactPersons = new List <TB_ContactPerson>();
                for (int i = 1; i < count; i++)
                {
                    var      contact = new TB_ContactPerson();
                    string[] list    = coords[i].Split(',');
                    contact.Name = list[nameIndex];
                    var group = _contactPersonGroups.FirstOrDefault(p => p.Name.Equals(list[utypeIndex], StringComparison.CurrentCultureIgnoreCase));
                    contact.UType     = group != null ? group.Id : 0;
                    contact.Sex       = (int)GlobalData.Current.GetSex(list[sexIndex]);
                    contact.Birthday  = list[birthdayIndex];
                    contact.Callphone = list[callphoneIndex];
                    contact.Telephone = list[telephoneIndex];
                    contact.Email     = list[emailIndex];
                    contact.Address   = list[addressIndex];
                    contact.UId       = GlobalData.Current.CurrentUser.Id;
                    contactPersons.Add(contact);
                }
                HandleData(() =>
                {
                    BLLOperate.AddContactPersonsByList(contactPersons);
                    MessageBox.Show(this, "导入成功!");
                    tvItems_AfterSelect(null, null);
                }, s => MessageBox.Show(this, s));
            }
        }