FormVisiting.cs 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Data.SqlClient;
  11. namespace T_FaceRecognizer
  12. {
  13. public partial class FormVisiting : Form
  14. {
  15. public FormVisiting(int selectedUserID,string UserName)
  16. {
  17. InitializeComponent();
  18. SelectedUserID = selectedUserID;
  19. LblUserName.Text = UserName;
  20. }
  21. #region <Переменные>
  22. int SelectedUserID = -1;
  23. SqlConnection SCon = new SqlConnection("Data Source=213.155.192.79,3002;Initial Catalog=FaceTrackApp;Persist Security Info=True;User ID=u20teresh;Password=bfg2");
  24. #endregion
  25. private void FormVisiting_Load(object sender, EventArgs e)
  26. {
  27. GetVisitingForSelectedUser(SelectedUserID);
  28. }
  29. /// <summary>
  30. /// получение списка посещений для выбранного пользователя
  31. /// </summary>
  32. /// <param name="UserID">Идентификатор пользователя</param>
  33. private void GetVisitingForSelectedUser(int UserID)
  34. {
  35. DgbVisitingForSelectedUser.Rows.Clear();
  36. SCon.Open();
  37. string QueryOnGetVisitsForSelectedUser = $@"set dateformat dmy
  38. select UsersID,FORMAT(cast([Date] as date),N'dd\.MM\.yyyy') as VisitDate,FORMAT(cast(TimeEntrance as time), N'hh\:mm\:ss') as timeIn,FORMAT(cast(TimeExit as time),N'hh\:mm\:ss')as timeEx
  39. from Visits
  40. where UsersID = '{UserID}'
  41. ";
  42. if(CbxFilterDate.Checked)
  43. {
  44. QueryOnGetVisitsForSelectedUser += $@" and [Date] = '{DtpVisitDate.Value.Date}'";
  45. }
  46. QueryOnGetVisitsForSelectedUser += " order by VisitDate";
  47. SqlCommand Cmd = new SqlCommand(QueryOnGetVisitsForSelectedUser, SCon);
  48. SqlDataReader Res = Cmd.ExecuteReader();
  49. if(!Res.HasRows)
  50. {
  51. MessageBox.Show("При выбранных параметрых сортировки посещения отсутствуют!", "FaceTrack", MessageBoxButtons.OK, MessageBoxIcon.Error);
  52. SCon.Close();
  53. return;
  54. }
  55. while (Res.Read())
  56. {
  57. DgbVisitingForSelectedUser.Rows.Add(Res["VisitDate"].ToString(), Res["timeIn"].ToString(), Res["timeEx"].ToString());
  58. }
  59. SCon.Close();
  60. }
  61. private void CbxFilterDate_CheckedChanged(object sender, EventArgs e)
  62. {
  63. GetVisitingForSelectedUser(SelectedUserID);
  64. }
  65. private void DtpVisitDate_ValueChanged(object sender, EventArgs e)
  66. {
  67. GetVisitingForSelectedUser(SelectedUserID);
  68. }
  69. }
  70. }