private void delete_Click(object sender, EventArgs e) { var stamping = new StampingDao().SetStampingDto(this.StampingTable); this.SelectedRows = dataGridView1.SelectedRows; string message = ""; StampingDto selectedStamping = null; if (this.SelectedRows.Count != 0) { for (var i = 0; i < this.SelectedRows.Count; i++) { selectedStamping = stamping[this.SelectedRows[i].Index]; message += "\n" + selectedStamping.Attendance.ToString("yyyy/MM/dd"); } DialogResult result = MessageBox.Show(message + "のレコードを削除します。", "", MessageBoxButtons.OKCancel); if (result == DialogResult.OK) { for (var i = 0; i < this.SelectedRows.Count; i++) { selectedStamping = stamping[this.SelectedRows[i].Index]; new StampingDao().DeleteRecord(selectedStamping); } } this.SetGredView(); } }
public List<StampingDto> SetStampingDto(DataTable dt) { var list = new List<StampingDto>(); foreach (DataRow dr in dt.Rows) { var dto = new StampingDto(); if (dt.Columns.Contains("id")) { dto.Id = int.Parse(dr["id"].ToString()); } if (dt.Columns.Contains("createTime")) { dto.CreateTime = DateTime.Parse(dr["createTime"].ToString()); } if (dt.Columns.Contains("updateTime") && !String.IsNullOrEmpty(dr["updateTime"].ToString())) { dto.UpdateTime = DateTime.Parse(dr["updateTime"].ToString()); } if (dt.Columns.Contains("employeeCode")) { dto.EmployeeCode = int.Parse(dr["employeeCode"].ToString()); } if (dt.Columns.Contains("year")) { dto.Year = int.Parse(dr["year"].ToString()); } if (dt.Columns.Contains("month")) { dto.Month = int.Parse(dr["month"].ToString()); } if (dt.Columns.Contains("day")) { dto.Day = int.Parse(dr["day"].ToString()); } if (dt.Columns.Contains("attendance")) { dto.Attendance = DateTime.Parse(dr["attendance"].ToString()); } if (dt.Columns.Contains("stampingCode")) { dto.StampingCode = int.Parse(dr["stampingcode"].ToString()); } if (dt.Columns.Contains("leavingWork") && !String.IsNullOrEmpty(dr["leavingWork"].ToString())) { dto.LeavingWork = DateTime.Parse(dr["leavingWork"].ToString()); } if (dt.Columns.Contains("workingHours") && !String.IsNullOrEmpty(dr["workingHours"].ToString())) { dto.WorkingHours = double.Parse(dr["workingHours"].ToString()); } if (dt.Columns.Contains("remark") && !String.IsNullOrEmpty(dr["remark"].ToString())) { dto.Remark = dr["remark"].ToString(); } list.Add(dto); } return list; }
public EditRecord(EmployeeDto employee, List <StampingDto> stamping) { InitializeComponent(); this.StartPosition = FormStartPosition.CenterScreen; this.employee = employee; this.Stamping = stamping[0]; label1.Text = this.employee.Name; this.InitializeText(); }
public void DeleteRecord(StampingDto dto) { using (var conn = GetConnection()) using (var cmd = new SqlCommand("DELETE FROM Attendance.dbo.Stamping WHERE @id = id", conn)) { conn.Open(); cmd.Parameters.AddWithValue("@id", dto.Id); cmd.ExecuteNonQuery(); } }
// 出勤レコード追加 private void AddAttemdance() { var dto = new StampingDto(); dto.EmployeeCode = this.Employee.Code; dto.CreateTime = DateTime.Now; dto.Year = DateTime.Now.Year; dto.Month = DateTime.Now.Month; dto.Day = DateTime.Now.Day; dto.Attendance = DateTime.Now; dto.StampingCode = cmbStampingType1.GetSelectedStampingType().StampingCode; new StampingDao().AddStamping(dto); }
private void GetAttendanceOrLeaving() { // DBより最新のデータ読み込み this.LatestStamping = new StampingDao().GetLatestStamping(cmbEmployee1.GetSelectedEmployee().Code); // 新規(最新データがnull)であれば出勤画面 // 既存で退勤時間が押されてあったら(退勤打刻が初期値でない)出勤画面 if (this.LatestStamping == null || LatestStamping.LeavingWork.CompareTo(new DateTime()) != 0) { StampingAttendance(); } else { StampingLeaving(); } }
// 退勤レコード追加 private void UpdateLeaving() { var dto = new StampingDto(); dto.UpdateTime = DateTime.Now; dto.LeavingWork = DateTime.Now; // 出勤時間、退勤時間を取得(丸め無し) var startTime = new WorkingHours().GetStartTime(this.LatestStamping.Attendance); var endTime = new WorkingHours().GetEndTime(dto.LeavingWork); dto.WorkingHours = new WorkingHours().GetWorkingHours(startTime, endTime); dto.Id = this.LatestStamping.Id; new StampingDao().UpdateStamping(dto); }
public void UpdateStamping(StampingDto dto) { // 退勤打刻 using (var conn = GetConnection()) using (var cmd = new SqlCommand("UPDATE Attendance.dbo.Stamping SET updateTime = @updateTime, leavingWork = @leavingWork, workingHours = @workingHours WHERE id = @id", conn)) { conn.Open(); cmd.Parameters.AddWithValue("@id", dto.Id); cmd.Parameters.AddWithValue("@updateTime", dto.UpdateTime); cmd.Parameters.AddWithValue("@leavingWork", dto.LeavingWork); cmd.Parameters.AddWithValue("@workingHours", dto.WorkingHours); cmd.ExecuteNonQuery(); } }
// 出勤打刻ボタン private void stampBtn_Click(object sender, EventArgs e) { // 打刻ボタン2度押し不可 stampBtn.Enabled = false; // 打刻時間の表示 TimeStamp.Text = GetCurrentTime(); // 打刻データをStamping.Daoへ(追加) var dto = new StampingDto(); dto.EmployeeCode = cmbEmployee1.GetSelectedEmployee().Code; dto.CreateTime = DateTime.Now; dto.Year = DateTime.Now.Year; dto.Month = DateTime.Now.Month; dto.Day = DateTime.Now.Day; dto.Attendance = DateTime.Now; dto.StampingCode = cmbStampingType1.GetSelectedStampingType().StampingCode; new StampingDao().AddStamping(dto); }
public void AddStamping(StampingDto dto) { // 出勤打刻 using (var conn = GetConnection()) using (var cmd = new SqlCommand("INSERT INTO Attendance.dbo.Stamping (createTime, employeeCode, year, month, day, attendance, stampingCode) VALUES(@createTime, @employeeCode,@year, @month, @day,@attendance,@stampingCode)", conn)) { conn.Open(); cmd.Parameters.AddWithValue("@createTime", dto.CreateTime); cmd.Parameters.AddWithValue("@employeeCode", dto.EmployeeCode); cmd.Parameters.AddWithValue("@year", dto.Year); cmd.Parameters.AddWithValue("@month", dto.Month); cmd.Parameters.AddWithValue("@day", dto.Day); cmd.Parameters.AddWithValue("@attendance", dto.Attendance); cmd.Parameters.AddWithValue("@stampingCode", dto.StampingCode); cmd.ExecuteNonQuery(); } }
public List <StampingDto> SetStampingDto(DataTable dt) { List <StampingDto> list = new List <StampingDto>(); foreach (DataRow dr in dt.Rows) { StampingDto dto = new StampingDto(); dto.Id = int.Parse(dr["id"].ToString()); if (!String.IsNullOrEmpty(dr["createTime"].ToString())) { dto.CreateTime = DateTime.Parse(dr["createTime"].ToString()); } if (!String.IsNullOrEmpty(dr["updateTime"].ToString())) { dto.UpdateTime = DateTime.Parse(dr["updateTime"].ToString()); } dto.EmployeeCode = int.Parse(dr["employeeCode"].ToString()); dto.Year = int.Parse(dr["year"].ToString()); dto.Month = int.Parse(dr["month"].ToString()); dto.Day = int.Parse(dr["day"].ToString()); dto.Attendance = DateTime.Parse(dr["attendance"].ToString()); if (!String.IsNullOrEmpty(dr["leavingWork"].ToString())) { dto.LeavingWork = DateTime.Parse(dr["leavingWork"].ToString()); } dto.StampingCode = int.Parse(dr["stampingCode"].ToString()); if (!String.IsNullOrEmpty(dr["workingHours"].ToString())) { dto.WorkingHours = int.Parse(dr["workingHours"].ToString()); } if (!String.IsNullOrEmpty(dr["remark"].ToString())) { dto.Remark = dr["remark"].ToString(); } list.Add(dto); } return(list); }
public void AddNewRecord(StampingDto dto) { // 新規追加(管理) using (var conn = GetConnection()) using (var cmd = new SqlCommand("INSERT INTO Attendance.dbo.Stamping (createTime, employeeCode, year, month, day, attendance, leavingwork, stampingCode, workingHours, remark) VALUES(@createTime, @employeeCode, @year, @month, @day, @attendance, @leavingWork, @stampingCode, @workingHours, @remark)", conn)) { conn.Open(); cmd.Parameters.AddWithValue("@createTime", dto.CreateTime); cmd.Parameters.AddWithValue("@employeeCode", dto.EmployeeCode); cmd.Parameters.AddWithValue("@year", dto.Year); cmd.Parameters.AddWithValue("@month", dto.Month); cmd.Parameters.AddWithValue("@day", dto.Day); cmd.Parameters.AddWithValue("@attendance", dto.Attendance); cmd.Parameters.AddWithValue("@leavingWork", dto.LeavingWork); cmd.Parameters.AddWithValue("@stampingCode", dto.StampingCode); cmd.Parameters.AddWithValue("@workingHours", dto.WorkingHours); cmd.Parameters.AddWithValue("@remark", dto.Remark); cmd.ExecuteNonQuery(); } }
private void AddNewRecord_Click_1(object sender, EventArgs e) { var dto = new StampingDto(); dto.EmployeeCode = cmbEmployee1.GetSelectedEmployee().Code; dto.CreateTime = DateTime.Now; dto.Year = cmbDate1.GetSelectedValue().year; dto.Month = cmbDate1.GetSelectedValue().month; dto.Day = cmbDate1.GetSelectedValue().day; dto.Attendance = this.GetStampingTime(cmb_startHour, cmb_startMinut); dto.LeavingWork = this.GetStampingTime(cmb_endHour, cmb_endMinut); dto.StampingCode = cmbStampingType1.GetSelectedStampingType().StampingCode; // 出勤時間、退勤時間を取得(丸め無し) var startTime = new WorkingHours().GetStartTime(this.GetStampingTime(cmb_startHour, cmb_startMinut)); var endTime = new WorkingHours().GetEndTime(this.GetStampingTime(cmb_endHour, cmb_endMinut)); // 労働時間 dto.WorkingHours = new WorkingHours().GetWorkingHours(startTime, endTime); dto.Remark = remark.Text; new StampingDao().AddNewRecord(dto); this.Close(); }
// 退勤打刻ボタン private void StampBtn2_Click(object sender, EventArgs e) { // 打刻ボタン2度押し不可 StampBtn2.Enabled = false; // 打刻時間を表示 TimeStamp.Text = GetCurrentTime(); // 退勤打刻データ→<StampingDto> var dto = new StampingDto(); dto.UpdateTime = DateTime.Now; dto.LeavingWork = DateTime.Now; // 出勤時間、退勤時間を取得(丸め無し) var startTime = new WorkingHours().GetStartTime(this.LatestStamping.Attendance); var endTime = new WorkingHours().GetEndTime(dto.LeavingWork); // 労働時間 dto.WorkingHours = new WorkingHours().GetWorkingHours(startTime, endTime); // 出勤打刻データに対して退勤打刻、労働時間をStampingDaoへ dto.Id = this.LatestStamping.Id; new StampingDao().UpdateStamping(dto); }
public void UpdateEditRecord(StampingDto dto) { // 更新(管理) using (var conn = GetConnection()) using (var cmd = new SqlCommand("UPDATE Attendance.dbo.Stamping SET updateTime = @updateTime, year = @year, month = @month, day = @day, attendance = @attendance, leavingwork = @leavingwork, stampingCode = @stampingCode, workingHours = @workingHours, remark = @remark WHERE id = @id", conn)) { conn.Open(); cmd.Parameters.AddWithValue("@id", dto.Id); cmd.Parameters.AddWithValue("@updateTime", dto.UpdateTime); //cmd.Parameters.AddWithValue("@employeeCode", dto.EmployeeCode); cmd.Parameters.AddWithValue("@year", dto.Year); cmd.Parameters.AddWithValue("@month", dto.Month); cmd.Parameters.AddWithValue("@day", dto.Day); cmd.Parameters.AddWithValue("@attendance", dto.Attendance); cmd.Parameters.AddWithValue("@leavingWork", dto.LeavingWork); cmd.Parameters.AddWithValue("@stampingCode", dto.StampingCode); cmd.Parameters.AddWithValue("@workingHours", dto.WorkingHours); cmd.Parameters.AddWithValue("@remark", dto.Remark); cmd.ExecuteNonQuery(); } }
private void UpdateRecord_Click(object sender, EventArgs e) { var dto = new StampingDto(); dto.Id = this.Stamping.Id; dto.EmployeeCode = this.employee.Code; dto.UpdateTime = DateTime.Now; dto.Year = cmbDate1.GetSelectedValue().year; dto.Month = cmbDate1.GetSelectedValue().month; dto.Day = cmbDate1.GetSelectedValue().day; var startHour = (int)cmb_startHour.SelectedItem; var startMinute = (int)cmb_startMinut.SelectedItem; var endHour = (int)cmb_endHour.SelectedItem; var endMinute = (int)cmb_endMinut.SelectedItem; dto.Attendance = this.GetStampingTime(startHour, startMinute); dto.LeavingWork = this.GetStampingTime(endHour, endMinute); dto.StampingCode = cmbStampingType1.GetSelectedStampingType().StampingCode; // 出勤時間、退勤時間を取得(丸め無し) var startTime = new WorkingHours().GetStartTime(this.GetStampingTime(startHour, startMinute)); var endTime = new WorkingHours().GetEndTime(this.GetStampingTime(endHour, endMinute)); // 労働時間 dto.WorkingHours = new WorkingHours().GetWorkingHours(startTime, endTime); dto.Remark = remark.Text; DialogResult result = MessageBox.Show(dto.Attendance.ToString("yyyy/MM/dd") + "のレコードをを更新します、よろしいですか?", "", MessageBoxButtons.OKCancel); if (result == DialogResult.OK) { new StampingDao().UpdateEditRecord(dto); this.DialogResult = System.Windows.Forms.DialogResult.OK; this.Close(); } }
public void SetLatestStampingType(StampingDto latestStamping) { cmb_stampingType.Text = new StampingTypeDao().GetAllStampingType().Find(stampingType => stampingType.StampingCode == latestStamping.StampingCode).StampingName; }
public void GetSelectedValue2(StampingDto stamping) { cmb_year.Text = stamping.Year.ToString(); cmb_month.Text = stamping.Month.ToString(); cmb_day.Text = stamping.Day.ToString(); }
public void GetSelectedValue2(StampingDto stamping) { cmb_stampingType.Text = this.StampingTypeList.Find(stampingType => stampingType.StampingCode == stamping.StampingCode).StampingName; }