/* * public static void UpdInsDSNVKetluongThang(List<cUserInfo> mDsnv, DateTime ngaydauthang) { * foreach (var nv in mDsnv) { * int kq = DAO.UpdInsNVKetluongThang(ngaydauthang, nv.MaCC, nv.HeSo.LuongCB, nv.HeSo.LuongCV, nv.HeSo.BHCongThem_ChoGD_PGD, //tbd BHXH_YT_TN * nv.PhongBan.ID, nv.PhongBan.Ten, nv.PhongBan.ViTri, nv.PhongBan.idParent, nv.IDChucVu, nv.ChucVu); * } * } * */ public static bool Kiemtra(DateTime ngayBD, DateTime ngayKT) { ngayBD = new DateTime(ngayBD.Year, ngayBD.Month, 1); ngayKT = new DateTime(ngayKT.Year, ngayKT.Month, 1); if (ngayBD > ngayKT) { MyUtility.Swap(ref ngayBD, ref ngayKT); } var query = " select Thang from ThongSoKetLuongThang where Thang >= @ThangBD and Thang <= @ThangKT "; var table = SqlDataAccessHelper.ExecuteQueryString(query, new string[] { "@ThangBD", "@ThangKT" }, new object[] { ngayBD, ngayKT }); if (table.Rows.Count == 0) { return(false); } return(true); }
public async Task GetFromStatementWithDataSetWithStringReturnAsync() { var da = new SqlDataAccess(ConnectionString); var helper = new SqlDataAccessHelper(); helper.SetRetrievalMode(DataActionRetrievalType.DataSet); helper.AddStatement( "select top 1 name from sys.databases where name in (@master,@model,@msdb) order by 1 asc"); helper.AddParameter("master", "master", SqlDbType.VarChar); helper.AddParameter("model", "model", SqlDbType.VarChar); helper.AddParameter("msdb", "msdb", SqlDbType.VarChar); var returnValue = await da.GetAsync <string>(helper); this.OutputTestTimings(helper.ExecutionContext); Assert.AreEqual(returnValue, "master"); }
private void frmSetupShift_Load(object sender, EventArgs e) { dgrdDSCa.AutoGenerateColumns = false; #region kiểm tra kết nối csdl trước if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 4000); this.Close(); return; } #endregion LoadGrid(); dgrdDSCa.ClearSelection(); dgrdDSCa.SelectionChanged += dgrdDSCa_SelectionChanged; }
public static bool CheckLogIn(string tempUsername, string tempPassword, string passroot, ref string tmpConnStr, ref int loaiTK, ref int currUserID, ref string currUserAccount) { var kqDocFile = KiemtraDocFileKetnoiDL(Settings.Default.ConnectionStringPath, ref tmpConnStr); var kq = false; if (!kqDocFile) // ko đọc được file thì trả về false { return(false); } // đọc được file thành công, kiểm tra kết nối csdl if (SqlDataAccessHelper.TestConnection(tmpConnStr) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 3000); return(false); } // kết nối csdl thành công, kiểm tra loại tài khoản SqlDataAccessHelper.ConnectionString = tmpConnStr; if (tempUsername == "root" && tempPassword == passroot) //log in bằng tài khoản root { currUserID = int.MaxValue; currUserAccount = tempUsername; loaiTK = 1; kq = true; } else // kiểm tra login bằng tài khoản thường { string passEncrypt = MyUtility.Mahoa(tempPassword); DataTable dt = DAO5.LogIn(tempUsername, passEncrypt); if (dt.Rows.Count != 0) // tài khoản thường -> { currUserID = (int)dt.Rows[0]["UserID"]; currUserAccount = dt.Rows[0]["UserAccount"].ToString(); loaiTK = 0; kq = true; } else { MessageBox.Show(Resources.Text_Acc_Pass_incorrect, Resources.Caption_ThongBao, MessageBoxButtons.OK); kq = false; } } return(kq); }
private int ExecuteUpdateGio(int pUserEnrollNumber, DateTime pTimeStrOld, DateTime temp_TimeStrNew) { return(SqlDataAccessHelper.ExecNoneQueryString( UpdateStringSuaGioVaoRa() , new[] { "@UserEnrollNumber" , "@TimeStr_Old" , "@TimeDate_New" , "@TimeStr_New" } , new object[] { pUserEnrollNumber , pTimeStrOld //[TBD]@TimeStr_Old , temp_TimeStrNew.Date //[TBD]@TimeDate_New , temp_TimeStrNew // [TBD]@TimeStr_New })); }
private void btnXoaTK_Click(object sender, EventArgs e) { string tempTenTK = tbTenTaiKhoan.Text; string deleteString = @" delete NewUserAccount where UserAccount = @UserAccount "; try { int kq = SqlDataAccessHelper.ExecNoneQueryString(deleteString, new[] { "@UserAccount" }, new object[] { tempTenTK }); if (kq != 0) { MessageBox.Show("Xóa tài khoản thành công.", "Thông báo", MessageBoxButtons.OK); } Load_cbTaikhoanWE(); Load_dataGridNewUserAccount(); } catch (Exception ex) { MessageBox.Show("Không xóa tài khoản được.\nLỗi:" + ex.ToString(), "Lỗi", MessageBoxButtons.OK); } }
/// <summary> /// lấy danh sách tài khoản mà UserID hiện tại được phép thao tác nằm trong giới hạn tài khoản login được phép thao tác /// </summary> /// <param name="UserID"></param> /// <param name="currUserID"></param> /// <returns></returns> private DataTable LayDSCacPhongban(int UserID, int currUserID) { string query = string.Empty; query += @" select RelationDept.ID, RelationDept.Description, RelationDept.RelationID, DeptPrivilege.IsYes from RelationDept, DeptPrivilege where DeptPrivilege.IDD = RelationDept.ID and DeptPrivilege.UserID = @UserID and RelationDept.ID IN ( select RelationDept.ID from RelationDept, DeptPrivilege where DeptPrivilege.IDD = RelationDept.ID and DeptPrivilege.UserID = @UserID_LoggedIn )" ; DataTable kq; kq = SqlDataAccessHelper.ExecuteQueryString(query, new string[] { "@UserID", "@UserID_LoggedIn" }, new object[] { UserID, currUserID }); return(kq); }
public static DataTable LayDSCa() { const string query = @" SELECT ShiftID,ShiftCode,Onduty,Offduty,DayCount,OnTimeIn,OnTimeOut,CutIn,CutOut ,OnLunch,OffLunch, DATEDIFF(MINUTE, 0, Shifts.Onduty) as OndutyMinute, DATEDIFF(MINUTE, 0, Shifts.Offduty) as OffdutyMinute ,WorkingTime,Workingday,LateGrace,EarlyGrace,AfterOT,ShowPosition,KyHieuCC ,Description, IsEnabled, IsExtended, IsSplited, ShiftID1, ShiftID2 ,StartNT,EndNT FROM Shifts group by Onduty,Offduty,ShiftID,ShiftCode,DayCount,OnTimeIn,OnTimeOut,CutIn,CutOut ,OnLunch,OffLunch ,WorkingTime,Workingday,LateGrace,EarlyGrace,AfterOT,ShowPosition,KyHieuCC ,Description, IsEnabled, IsExtended, IsSplited, ShiftID1, ShiftID2 ,StartNT,EndNT" ; //ver 4.0.0.4 StartNT,EndNT var kq = SqlDataAccessHelper.ExecuteQueryString(query, null, null); return(kq); }
private void btnXoaKBVang_Click(object sender, EventArgs e) { if (XL2.KiemtraKetnoiCSDL() == false) { return; } #region chưa chọn nhân viên thì báo var listMaCC_NV = (from DataGridViewRow dataGridViewRow in dgrdTongHop.SelectedRows let row = (DataRowView)dataGridViewRow.DataBoundItem select(int) row["UserEnrollNumber"]).ToList(); if (listMaCC_NV.Count == 0) { ACMessageBox.Show(Resources.Text_ChuaChonNV, Resources.Caption_ThongBao, 2000); return; } #endregion if (MessageBox.Show(string.Format("Xoá tất cả khai báo vắng ngày {0} của các nhân viên được chọn?", dtpNgay.Value.Date.ToString("dddd dd/MM/yyyy")), Resources.Caption_XacNhan, MessageBoxButtons.YesNo) == DialogResult.No) { return; } IEnumerable <dynamic> templist = (from macc in listMaCC_NV select new { MaCC = macc, NgayVang = dtpNgay.Value.Date }); string query = " delete from Absent where UserEnrollNumber = @UserEnrollNumber and TimeDate = @TimeDate "; try { foreach (dynamic obj in templist) { SqlDataAccessHelper.ExecNoneQueryString( query, new string[] { "@UserEnrollNumber", "@TimeDate" }, new object[] { obj.MaCC, obj.NgayVang }); DAO.GhiNhatKyThaotac("Xoá các khai báo vắng trong ngày", string.Format("Xoá tất cả khai báo vắng của NV có mã chấm công [{0}] trong ngày [{1}]", (int)obj.MaCC, ((DateTime)obj.NgayVang).ToString("dd/MM/yyyy")), maCC: (int)obj.MaCC); } } catch (Exception ex) { lg.Error(string.Format("[{0}]_[{1}]\n", this.Name, System.Reflection.MethodBase.GetCurrentMethod().Name), ex); MessageBox.Show(Resources.Text_CoLoi, Resources.Caption_Loi); } dtpNgay_ValueChanged(null, null); }
private void frmCapNhatNVHangLoat_Load(object sender, EventArgs e) { List <cPhongBan> dspb = new List <cPhongBan>(); XL.KhoiTaoDSPhongBan(dspb); XL.loadTreePhgBan(treePhongBan, XL2.TatcaPhongban, dspb); cbChucVu.DataSource = DAO.LoadDataSourceChucVu(false); cbChucVu.DisplayMember = "ChucVu"; cbChucVu.ValueMember = "IDChucVu"; var tableLichTrinh = SqlDataAccessHelper.ExecuteQueryString("select * from Schedule"); cbLichTrinh.DataSource = tableLichTrinh; cbLichTrinh.DisplayMember = "SchName"; cbLichTrinh.ValueMember = "SchID"; }
private void frmQLLuongCongNhat_Load(object sender, EventArgs e) { groupBox1.Text = string.Format(groupBox1.Text, m_thang.ToString("MM/yyyy")); // danh sách nhân viên chi công nhật tháng {0} #region kiểm tra kết nối csdl, mất kết nối thì thoát if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 4000); return; } #endregion // load danh sách nv tính lương công nhật trong tháng m_OriginTableCongNhat = DAO.LayTableCongNhat(m_thang); dgrdDSLuongCongnhat.DataSource = m_OriginTableCongNhat; dgrdDSLuongCongnhat.ClearSelection(); }
private void btnTaoTK_Click(object sender, EventArgs e) { if (XL2.KiemtraKetnoiCSDL() == false) { return; } if (tbPass1.Text != tbPass2.Text) { MessageBox.Show("Mật khẩu không khớp."); return; } if (tbPass1.Text == string.Empty || tbPass2.Text == string.Empty) { MessageBox.Show("Mật khẩu không được để trống."); return; } string insertString = " insert into NewUserAccount(UserID, UserAccount, Password) values (@UserID, @UserAccount, @password) "; int tempUserID = (int)cbTaikhoanWE.SelectedValue; string tempUserAccount = cbTaikhoanWE.SelectedItem.ToString(); string tempPass = tbPass1.Text; string tempPassEncrypt = MyUtility.Mahoa(tempPass); try { int kq = SqlDataAccessHelper.ExecNoneQueryString(insertString , new[] { "@UserID", "@UserAccount", "@password" } , new object[] { tempUserID, tempUserAccount, tempPassEncrypt }, CanLog: false); if (kq != 0) { MessageBox.Show("Thêm tài khoản thành công.", "Thông báo", MessageBoxButtons.OK); } else { MessageBox.Show("Không thêm được tài khoản.", "Lỗi", MessageBoxButtons.OK); } Load_dataGridNewUserAccount(); Load_cbTaikhoanWE(); } catch (Exception exception) { lg.Error(string.Format("[{0}]_[{1}]\n", this.Name, System.Reflection.MethodBase.GetCurrentMethod().Name), exception); MessageBox.Show("Mất kết nối đến máy chủ. Vui lòng thử lại.", "Lỗi", MessageBoxButtons.OK); } }
private void btnThem_Click(object sender, EventArgs e) { //hiển thị form và nhận kết quả trả về frmNhapThongTinPhong frm = new frmNhapThongTinPhong(); frm.m_CurrentDataRow = (DataRow)treePhongBan.SelectedNode.Tag; frm.m_Mode = ModeType.Them; frm.ShowDialog(); if (frm.m_Mode == ModeType.Cancel) { return; } //sử dụng kết quả trả về thêm vào CSDL if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 3000); return; } #region test ACMessageBox.Show(string.Format("{0};RID {1};LID {2};VT {3};E {4}", frm.m_TenPhong, (int)frm.m_ParentDataRow["RelationID"], (int)frm.m_ParentDataRow["LevelID"] + 1, frm.m_VitriPhong, frm.m_Enable), "", 5000); loadTreePhgBan(treePhongBan); //return; #endregion if (SqlDataAccessHelper.ExecSPNoneQuery(SPName6.RelationDept_ThemPhongV6.ToString(), new SqlParameter("@Description", frm.m_TenPhong), new SqlParameter("@RelationID", (int)frm.m_ParentDataRow["ID"]), new SqlParameter("@LevelID", (int)frm.m_ParentDataRow["LevelID"] + 1),//+1 vì là con của phòng trực thuộc new SqlParameter("@ViTri", frm.m_VitriPhong), new SqlParameter("@Enable", frm.m_Enable)) == 0) { ACMessageBox.Show(Resources.Text_CoLoi, Resources.Caption_Loi, 2000); return; } else //thêm thành công load lại tree { loadTreePhgBan(treePhongBan); treePhongBan.ExpandAll(); } }
private void btnXem_Click(object sender, EventArgs e) { if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { AutoClosingMessageBox.Show("Mất kết nối với CSDL. Vui lòng thử lại sau.", "Lỗi", 2000); return; } //1. lấy dữ liệu từ form #region lấy ngày BD và kết thúc nếu quá 62 ngày thì báo dtpNgayBD.Update(); dtpNgayKT.Update(); var ngayBD = dtpNgayBD.Value.Date; var ngayKT = dtpNgayKT.Value.Date; #endregion BindingContext[dgrdDSNVTrgPhg.DataSource].EndCurrentEdit(); //2. lấy danh sách nhân viên check, nếu chưa có nv nào check thì thông báo IEnumerable <DataGridViewRow> lstGridViewRow = dgrdDSNVTrgPhg.Rows.Cast <DataGridViewRow>(); var listNV = (from row in (lstGridViewRow) where ((DataRowView)row.DataBoundItem)["check"] != DBNull.Value && (bool)((DataRowView)row.DataBoundItem)["check"] select(cUserInfo)((DataRowView)row.DataBoundItem).Row["cUserInfo"]).ToList(); if (listNV.Count == 0) { AutoClosingMessageBox.Show("Bạn chưa chọn Nhân viên", "Thông báo", 2000); GC.Collect(); return; } /*m_Bang_TongHopXemCong.Rows.Clear(); * m_Bang_GioKDQD.Rows.Clear(); * m_Bang_GioThieuCheck.Rows.Clear();*/ m_Bang_PH_Them.Rows.Clear(); XL.LayBang_PH_Them(listNV, ngayBD, ngayKT, ref m_Bang_PH_Them); XL.LayBang_PH_Xoaa(listNV, ngayBD, ngayKT, ref m_Bang_PH_Xoaa); XL.LayBang_PH_GioGoc(listNV, ngayBD, ngayKT, ref m_Bang_PH_GioGoc); XL.LayBang_GioDaXN(listNV, ngayBD, ngayKT, ref m_Bang_GioDaXN); dgrdPH_Them.DataSource = m_Bang_PH_Them; dgrdPH_Xoaa.DataSource = m_Bang_PH_Xoaa; dgrdPH_GioGoc.DataSource = m_Bang_PH_GioGoc; dgrdGioDaXN.DataSource = m_Bang_GioDaXN; }
private void XuLyXoaLichTrinh(List <int> ListIDLichTrinh) { if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 3000); return; } // thực hiện xóa lịch trình => LOGIC xóa lịch trình cũng đồng nghĩa xóa luôn các ca làm việc theo lịch trình này. foreach (int id in ListIDLichTrinh) { int kq = SqlDataAccessHelper.ExecSPNoneQuery(SPName6.Other_XoaLichTrinhV6.ToString(), new SqlParameter("@SchID", id)); if (kq == 0) { ACMessageBox.Show(Resources.Text_CoLoi, Resources.Caption_Loi, 2000); return; } } }
public void FillFromProcedureWithDataReaderWithObjectReturnBadProcedureName() { var da = new SqlDataAccess(ConnectionString); var helper = new SqlDataAccessHelper(); helper.SetRetrievalMode(DataActionRetrievalType.DataReader); helper.AddProcedure("sp_helpxxx"); try { var values = da.Fill <DbHelpModel>(helper); Assert.Fail("Procedure does not exist and should throw an exception"); } catch (Exception e) { Assert.IsTrue(e.Message == "Could not find stored procedure \'dbo.sp_helpxxx\'."); } }
private void Load_cbTaikhoanWE() { try { DataTable dataTable = SqlDataAccessHelper.ExecuteQueryString( @" select UserID, UserAccount from UserAccount where UserAccount not in (select NewUserAccount.UserAccount from NewUserAccount)" , null, null); cbTaikhoanWE.DisplayMember = "UserAccount"; cbTaikhoanWE.ValueMember = "UserID"; cbTaikhoanWE.DataSource = dataTable; tbPass1.Text = tbPass2.Text = string.Empty; if (dataTable == null || dataTable.Rows.Count == 0) { btnTaoTK.Enabled = false; } } catch (Exception exception) { throw exception; } }
private void btnXoaTK_Click(object sender, EventArgs e) { string tempTenTK = tbTenTaiKhoan.Text; string deleteString = @" delete NewUserAccount where UserAccount = @UserAccount "; try { int kq = SqlDataAccessHelper.ExecNoneQueryString(deleteString, new[] { "@UserAccount" }, new object[] { tempTenTK }); if (kq != 0) { MessageBox.Show("Xóa tài khoản thành công.", "Thông báo", MessageBoxButtons.OK); } Load_cbTaikhoanWE(); Load_dataGridNewUserAccount(); } catch (Exception ex) { lg.Error(string.Format("[{0}]_[{1}]\n", this.Name, System.Reflection.MethodBase.GetCurrentMethod().Name), ex); MessageBox.Show("Không xóa tài khoản được.", "Lỗi", MessageBoxButtons.OK); } }
public static bool KiemtraDulieuCapnhatTuServer(DateTime now) { //logic lấy thời gian MAX nguồn từ máy chấm công, nếu ko có dữ liệu trả về MinValue // trong vòng 7 tiếng trước ko có chấm công nghĩa là chưa lấy dữ liệu từ máy chấm công về const string query = @" SELECT MAX(CheckInOut.TimeStr) FROM CheckInOut WHERE OriginType != N'PC' and MachineNo != 21 and MachineNo != 22"; var kq = SqlDataAccessHelper.ExecuteQueryString(query, null, null); var lastCheckTime = DateTime.MinValue; if (kq.Rows.Count != 0) { if (kq.Rows[0][0] != DBNull.Value) { lastCheckTime = (DateTime)kq.Rows[0][0]; } } return(lastCheckTime != DateTime.MinValue && now - lastCheckTime <= XL2._07h00); }
public static DataTable LietKeNgayVangChoNV(List <int> arrDSNVCheck, DateTime ngayBD, DateTime ngayKT) { var query = @" SELECT ID, UserInfo.UserEnrollNumber, UserInfo.UserFullCode, UserInfo.UserFullName, TimeDate, LoaiVang.AbsentCode, LoaiVang.AbsentDescription, Thang, Nam, Absent.Workingday, Absent.WorkingTime, Absent.PhuCap FROM Absent, LoaiVang , UserInfo WHERE (Absent.AbsentCode = LoaiVang.AbsentCode) and (UserInfo.UserEnrollNumber = Absent.UserEnrollNumber) and (TimeDate >= @NgayBD and TimeDate <= @NgayKT) and (UserInfo.UserEnrollNumber = {0} ) ORDER BY UserInfo.UserEnrollNumber ASC,Nam DESC, Thang DESC, TimeDate ASC " ; query = String.Format(query, String.Join(" or UserInfo.UserEnrollNumber = ", arrDSNVCheck.ToArray())); DataTable table = SqlDataAccessHelper.ExecuteQueryString(query , new string[] { "@NgayBD", "@NgayKT" } , new object[] { ngayBD, ngayKT }); return(table); }
public static int UpdIns_TinhPCDB(int macc, DateTime ngay, int loai, int pcngay, int pcdem, string noidungLog) { var query = @" update XacNhanPC set LoaiPC = @loai, Duyet = 1 where Ngay = @Ngay and UserEnrollNumber = @UserEnrollNumber if @@ROWCOUNT=0 insert into XacNhanPC (UserEnrollNumber, Ngay,LoaiPC,PCNgay, PCDem,Duyet) values (@UserEnrollNumber, @Ngay,@loai,@PCNgay, @PCDem,1)"; var n = SqlDataAccessHelper.ExecNoneQueryString(query, new string[] { "@loai", "@Ngay", "@UserEnrollNumber", "@PCNgay", "@PCDem" }, new object[] { loai, ngay, macc, pcngay, pcdem }); string noidung = "Xác nhận [{0}] tính phụ cấp {1} ngày [{2}] cho NV có mã chấm công [{3}]"; noidung = string.Format(noidung, "CÓ", noidungLog, ngay.ToString("dd/MM/yyyy"), macc); DAO.GhiNhatKyThaotac("Xác nhận phụ cấp làm việc ngày nghỉ, trực lễ, tết", noidung, maCC: macc); return(n); }
private void fmXemCong4_Load(object sender, EventArgs e) { #region kiểm tra kết nối csdl , nếu mất kết nối thì đóng if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 4000); Close(); return; } #endregion /* 1. load tree phòng ( datasource cho checkComboEdit chọn nv do hàm treeAfterselect tạo * 2. * 3. set tháng khi load lần đầu */ XL.loadTreePhgBan(treePhongBan); treePhongBan.AfterSelect += treePhongBan_AfterSelect; }
private void frm_32_XemLichSu_Load(object sender, EventArgs e) { if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 3000); this.Close(); return; } var table = SqlDataAccessHelper.ExecuteQueryString("select UserID,UserAccount from NewUserAccount"); cbTaiKhoanThucHien.ValueMember = "UserID"; cbTaiKhoanThucHien.DisplayMember = "UserAccount"; cbTaiKhoanThucHien.DataSource = table; dtpStartThoiDiemSua.Value = DateTime.Today; dtpEndddThoiDiemSua.Value = DateTime.Now; }
public static bool ThemNgayVang(int MaCC, DateTime ngayVang, float workingDay, float workingTime, float PhuCapVang, string absentCode) { #region query /* * var queryIns = @" * IF EXISTS ( SELECT ID FROM Absent * WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate * and WorkingTime = 4 and WorkingTime = @WorkingTime ) * UPDATE Absent SET Workingday = @NewWorkingday, WorkingTime = @NewWorkingTime * WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate * and WorkingTime = 4 and WorkingTime = @WorkingTime * ELSE * INSERT INTO Absent (UserEnrollNumber, TimeDate, AbsentCode, Thang, Nam, Workingday, WorkingTime) * VALUES (@UserEnrollNumber, @TimeDate, @AbsentCode,@Thang,@Nam,@Workingday,@WorkingTime) * "; */ var queryIns = @" IF EXISTS ( SELECT ID FROM Absent WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate and WorkingTime = 4 and WorkingTime = @WorkingTime ) UPDATE Absent SET Workingday = Workingday + @Workingday, WorkingTime = WorkingTime + @WorkingTime, PhuCap = CAST(ISNULL(PhuCap,0) as real) + @PhuCap WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate and WorkingTime = 4 and WorkingTime = @WorkingTime ELSE INSERT INTO Absent (UserEnrollNumber, TimeDate, AbsentCode, Thang, Nam, Workingday, WorkingTime, PhuCap) VALUES (@UserEnrollNumber, @TimeDate, @AbsentCode,@Thang,@Nam,@Workingday,@WorkingTime,@PhuCap) "; #endregion //info ghép 2 cái nửa thành 1 int kq = SqlDataAccessHelper.ExecNoneQueryString( queryIns, new string[] { "@UserEnrollNumber", "@TimeDate", "@AbsentCode", "@Thang", "@Nam", "@Workingday", "@WorkingTime", "@PhuCap", }, new object[] { MaCC, ngayVang, absentCode, ngayVang.Month, ngayVang.Year, workingDay, workingTime, PhuCapVang }); string noidung = "Thêm xin phép vắng [{0}] [{1}] ngày [{2}], phụ cấp [{3}] cho NV có mã chấm công [{4}]"; DAO.GhiNhatKyThaotac("Thêm xin phép vắng", string.Format(noidung, absentCode, workingDay.ToString("0.0"), (ngayVang).ToString("dd/MM/yyyy"), PhuCapVang.ToString("0.00"), MaCC), maCC: MaCC); return(true); }
private void btnThucHien_Click(object sender, EventArgs e) { if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { AutoClosingMessageBox.Show("Mất kết nối với CSDL. Vui lòng thử lại sau.", "Lỗi", 2000); return; } IsReload = true; var luongdieuchinh = (Double)numLuongDieuChinh.Value; var tamung = (Double)numTamUngThang.Value; var thuchikhac = (Double)numThuChiKhac.Value; var mucdongbhxh = 0f; if (Single.TryParse(tbMucDongBH.Text, out mucdongbhxh) == false) { AutoClosingMessageBox.Show("Mức đóng BHXH không hợp lệ. Vui lòng nhập lại.", "Thông báo", 4000); return; } var thang = dtpThang.Value; var flagError = false; foreach (var row in Row) { var UserEnrollNumber = (int)row["UserEnrollNumber"]; var UserFullCode = row["UserFullCode"].ToString(); var tennv = (row["UserFullName"].ToString()); var kq = DAO.DAL.CapNhatLuongDieuChinh_TamUng_ThuChiKhac(UserEnrollNumber, thang.Month, thang.Year, luongdieuchinh, tamung, thuchikhac, mucdongbhxh); if (kq == 0) { flagError = true; AutoClosingMessageBox.Show( string.Format("Xảy ra lỗi trong quá trình cập nhật tại vị trí nhân viên {0}, mã {1}.\nVui lòng thử lại.", tennv, UserFullCode), "Lỗi", 3000); break; } } if (flagError == false) { AutoClosingMessageBox.Show("Thực hiện thành công.", "Thông báo", 2000); this.Close(); } }
private void treePhongBan_AfterSelect(object sender, TreeViewEventArgs e) { #region kiểm tra kết nối csdl , nếu mất kết nối thì đóng if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false) { ACMessageBox.Show(Resources.Text_MatKetNoiCSDL, Resources.Caption_Loi, 3000); Close(); return; } #endregion #region mỗi lần chọn node thì lấy ID node hiện tại và tất cả node con m_listIDPhongBan.Clear(); if (e.Node.FirstNode != null) { XL.GetIDNodeAndChildNode(e.Node, ref m_listIDPhongBan); } else { var temp = ((cPhongBan)e.Node.Tag); if (temp.ChoPhep) { m_listIDPhongBan.Add(temp.ID); } } e.Node.Expand(); #endregion XL.KhoiTaoDSNV_ChamCong(m_DSNV, m_listIDPhongBan, m_DSPhg); XL.TaoTableDSNV(m_DSNV, m_Bang_DSNV); var dataView = dgrdDSNVTrgPhg.DataSource as DataView; if (dataView != null) { dataView.RowFilter = string.Empty; } checkAll_GridDSNV.Checked = false; }
public static DataTable LayTableXPVang(DateTime ngayBD, DateTime ngayKT, int[] ArrDSMaCC_Checked) { var query = @" SELECT ID, UserInfo.UserEnrollNumber, UserInfo.UserFullCode, UserInfo.UserFullName , TimeDate, LoaiVang.AbsentCode, LoaiVang.AbsentDescription , Thang, Nam, Absent.Workingday, Absent.WorkingTime , Absent.PhuCap FROM Absent, LoaiVang , UserInfo WHERE (Absent.AbsentCode = LoaiVang.AbsentCode) and (UserInfo.UserEnrollNumber = Absent.UserEnrollNumber) and (TimeDate >= @NgayBD and TimeDate <= @NgayKT) and ( UserInfo.UserEnrollNumber = {0} ) ORDER BY UserInfo.UserEnrollNumber ASC,Nam DESC, Thang DESC, TimeDate ASC " ; query = String.Format(query, String.Join(" or UserInfo.UserEnrollNumber = ", ArrDSMaCC_Checked)); var tableVang = SqlDataAccessHelper.ExecuteQueryString(query , new string[] { "@NgayBD", "@NgayKT" } , new object[] { ngayBD, ngayKT }); return(tableVang); }
public static int UpdCa(int shiftid, string shiftcode, TimeSpan OnnDuty, TimeSpan OffDuty, int DayCount, int wktime, float wkday, int iOnnInn, int iCutInn, int iOnnOut, int iCutOut, int cptre, int cpsom, int afterot, string mota, string kyhieucc, TimeSpan OnnLun, TimeSpan OffLun, bool tachcadem, int shiftid1, int shiftid2, bool isenable, bool isextended) { var query = @" update Shifts set ShiftCode= @shiftcode , Onduty= @OnnDuty , Offduty= @OffDuty , DayCount= @DayCount , WorkingTime= @wktime , Workingday= @wkday , OnTimeIn= @iOnnInn , CutIn= @iCutInn , OnTimeOut= @iOnnOut , CutOut= @iCutOut , LateGrace= @cptre , EarlyGrace= @cpsom , AfterOT= @afterot , Description= @mota , KyHieuCC= @kyhieucc , OnLunch= @OnnLun , OffLunch= @OffLun , IsSplited= @tachcadem , ShiftID1= @shiftid1 , ShiftID2= @shiftid2 , IsEnabled=@isenable , IsExtended= @isextended where ShiftID = @ShiftID" ; return(SqlDataAccessHelper.ExecNoneQueryString(query, new string[] { "@ShiftID", "@shiftcode", "@OnnDuty", "@OffDuty", "@DayCount", "@wktime", "@wkday", "@iOnnInn", "@iCutInn", "@iOnnOut", "@iCutOut", "@cptre", "@cpsom", "@afterot", "@mota", "@kyhieucc", "@OnnLun", "@OffLun", "@tachcadem", "@shiftid1", "@shiftid2", "@isenable", "@isextended" }, new object[] { shiftid, shiftcode, OnnDuty.ToString(@"hh\:mm"), OffDuty.ToString(@"hh\:mm"), DayCount, wktime, wkday, iOnnInn, iCutInn, iOnnOut, iCutOut, cptre, cpsom, afterot, mota, kyhieucc, OnnLun.ToString(@"hh\:mm"), OffLun.ToString(@"hh\:mm"), tachcadem, (shiftid1 == -1) ? (object)DBNull.Value : shiftid1, (shiftid2 == -1) ? (object)DBNull.Value : shiftid2, isenable, isextended })); }
public static bool XoaNgayVangNV(List <DataRowView> arrRecord) { var query = @"DELETE FROM Absent WHERE ID = {0}"; var formatStr2 = "Xóa khai báo vắng [{0}] [{1}] ngày ngày [{2}] của NV có mã chấm công [{3}]"; //query = String.Format(query, String.Join(" or ID = ", arrRecord)); foreach (var rowView in arrRecord) { var id = (int)rowView["ID"]; var absentCode = rowView["AbsentCode"].ToString(); var wkday = (float)rowView["Workingday"]; var ngay = (DateTime)rowView["TimeDate"]; var macc = (int)rowView["UserEnrollNumber"]; SqlDataAccessHelper.ExecNoneQueryString(string.Format(query, id), null, null); DAO.GhiNhatKyThaotac("Xóa khai báo vắng", noidung: string.Format(formatStr2, absentCode, wkday.ToString("0.0"), ngay.ToString("H:mm:ss dd/MM/yyyy"), macc), maCC: macc); } return(true); }
public static bool ThemNgayVang(IEnumerable <dynamic> list, float workingDay, float workingTime, float PhuCapVang, string absentCode) { #region query var queryIns = @" IF EXISTS ( SELECT ID FROM Absent WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate and WorkingTime = 4 and WorkingTime = @WorkingTime ) UPDATE Absent SET Workingday = Workingday + @Workingday, WorkingTime = WorkingTime + @WorkingTime, PhuCap = CAST(ISNULL(PhuCap,0) as real) + @PhuCap WHERE UserEnrollNumber = @UserEnrollNumber and AbsentCode=@AbsentCode and TimeDate=@TimeDate and WorkingTime = 4 and WorkingTime = @WorkingTime ELSE INSERT INTO Absent (UserEnrollNumber, TimeDate, AbsentCode, Thang, Nam, Workingday, WorkingTime, PhuCap) VALUES (@UserEnrollNumber, @TimeDate, @AbsentCode,@Thang,@Nam,@Workingday,@WorkingTime,@PhuCap) "; #endregion string noidung = "Thêm xin phép vắng [{0}] [{1}] ngày [{2}], phụ cấp [{3}] cho NV có mã chấm công [{4}] "; //info ghép 2 cái nửa thành 1 foreach (dynamic obj in list) { int kq = SqlDataAccessHelper.ExecNoneQueryString( queryIns, /* * new string[] { "@UserEnrollNumber", "@TimeDate", "@AbsentCode", "@Thang", "@Nam", * "@Workingday", "@WorkingTime", "@NewWorkingday", "@NewWorkingTime", }, */ new string[] { "@UserEnrollNumber", "@TimeDate", "@AbsentCode", "@Thang", "@Nam", "@Workingday", "@WorkingTime", "@PhuCap", }, /* * new object[] { obj.MaCC, obj.NgayVang, absentCode, obj.NgayVang.Month, obj.NgayVang.Year, * workingDay, workingTime, 1f, 8f }); */ new object[] { obj.MaCC, obj.NgayVang, absentCode, obj.NgayVang.Month, obj.NgayVang.Year, workingDay, workingTime, PhuCapVang }); DAO.GhiNhatKyThaotac("Thêm xin phép vắng", string.Format(noidung, absentCode, workingDay.ToString("0.0"), ((DateTime)obj.NgayVang).ToString("dd/MM/yyyy"), PhuCapVang.ToString("0.0#"), obj.MaCC), maCC: (int)obj.MaCC); } return(true); }