Login.cs 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. using System;
  2. using DevExpress.XtraEditors;
  3. using UAS_PLCDataReader.Entity;
  4. using System.Data;
  5. using UAS_PLCDataReader.DataOperate;
  6. using UAS_PLCDataReader.PublicMethod;
  7. namespace UAS_PLCDataReader
  8. {
  9. public partial class Login : XtraForm
  10. {
  11. DataHelper dh = new DataHelper();
  12. public DataTable UserInf { get; private set; }
  13. public Login()
  14. {
  15. InitializeComponent();
  16. }
  17. private void Login_Load(object sender, EventArgs e)
  18. {
  19. SystemInf.dh = dh;
  20. DataTable dt = (DataTable)dh.ExecuteSql("select ma_user,ma_function from master", "select");
  21. BaseUtil.FillComBoxEditWidthDataTable(Master, "ma_function", "ma_user", dt, false);
  22. string index = BaseUtil.GetCacheData("Master").ToString();
  23. Master.SelectedIndex = int.Parse(index == "" ? "0" : index);
  24. }
  25. private void LoginButton_Click(object sender, EventArgs e)
  26. {
  27. if (UserName.Text != "" && PassWord.Text != "")
  28. {
  29. string oErrMessage = "";
  30. string master = BaseUtil.GetComboxEditValue(Master);
  31. if (LogicHandler.CheckUserLogin(UserName.Text, PassWord.Text, master, out oErrMessage))
  32. {
  33. DataHelper.DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=" + master + ";Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=183.238.39.179)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
  34. dh = new DataHelper();
  35. SystemInf.dh = dh;
  36. BaseUtil.SetCacheData("Master", Master.SelectedIndex);
  37. SetInf();
  38. Main main = new Main();
  39. Hide();
  40. main.ShowDialog();
  41. Close();
  42. }
  43. else XtraMessageBox.Show(oErrMessage);
  44. }
  45. else XtraMessageBox.Show("用户名和密码不能为空!");
  46. }
  47. /// <summary>
  48. ///设置User类的全局变量,类似于Session
  49. /// </summary>
  50. private void SetInf()
  51. {
  52. //设置全局用户信息
  53. string[] field = { "em_code,em_depart,em_type,em_name,em_position,em_professname,em_type" };
  54. UserInf = dh.getFieldsDataByCondition("Employee ", field, "upper(em_code)='" + UserName.Text.ToUpper() + "'");
  55. //通过Source表关联岗位资源编号查询出当前的执行工序
  56. User.UserCode = UserInf.Rows[0]["em_code"].ToString();
  57. User.UserDepartment = UserInf.Rows[0]["em_depart"].ToString();
  58. User.UserName = UserInf.Rows[0]["em_name"].ToString();
  59. User.UserPosition = UserInf.Rows[0]["em_position"].ToString();
  60. User.UserProfessName = UserInf.Rows[0]["em_professname"].ToString();
  61. User.UserAccountType = UserInf.Rows[0]["em_type"].ToString();
  62. //User.UserGroupCode = UserInf.Rows[0]["ug_code"].ToString();
  63. //User.UserGroup = UserInf.Rows[0]["ug_name"].ToString();
  64. }
  65. private void PassWord_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
  66. {
  67. if (e.KeyCode == System.Windows.Forms.Keys.Enter)
  68. {
  69. LoginButton.PerformClick();
  70. }
  71. }
  72. }
  73. }