public clsQuyDinhLuong_DTO LayQuyDinhLuong() { SqlConnection conn = ThaoTacDuLieu.TaoVaMoKetNoi(); string sql = "SELECT * FROM QUYDINHLUONG WHERE MAQD = 'QD1'"; SqlCommand cmd = ThaoTacDuLieu.TaoDoiTuongTruyVan(sql, conn); SqlDataReader dr = cmd.ExecuteReader(); clsQuyDinhLuong_DTO QuyDinh = new clsQuyDinhLuong_DTO(); while (dr.Read()) { if (!dr.IsDBNull(0)) { QuyDinh.MaQD = dr.GetString(0); } if (!dr.IsDBNull(1)) { QuyDinh.LuongToiThieu = dr.GetDecimal(1); } if (!dr.IsDBNull(2)) { QuyDinh.BHXH = dr.GetDouble(2); } if (!dr.IsDBNull(3)) { QuyDinh.BHYT = dr.GetDouble(3); } if (!dr.IsDBNull(4)) { QuyDinh.BHTN = dr.GetDouble(4); } } ThaoTacDuLieu.DongKetNoi(conn); return(QuyDinh); }
private void btnCapNhat_Click(object sender, EventArgs e) { try { clsQuyDinhLuong_DTO QuyDinh = new clsQuyDinhLuong_DTO(); clsQuyDinhLuong_BUS BUS = new clsQuyDinhLuong_BUS(); QuyDinh.LuongToiThieu = Convert.ToInt32(txtLuongCoBan.Text.Replace(",", "")); QuyDinh.BHXH = Convert.ToDouble(nudBHXH_NV.Value / 100); QuyDinh.BHYT = Convert.ToDouble(nudBHYT_NV.Value / 100); QuyDinh.BHTN = Convert.ToDouble(nudBHTT_NV.Value / 100); if (BUS.CapNhatQuyDinhLuong(QuyDinh)) { MessageBox.Show("Cập nhật thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information); clsNhatKy_BUS BUSNK = new clsNhatKy_BUS(); BUSNK.ThemNhatKy(Program.NhanVien_Login.TaiKhoan, DateTime.Now, string.Format("{0} đã cập nhật quy định lương", Program.NhanVien_Login.TaiKhoan)); } loadDuLieuLuong(); } catch (FormatException fe) { MessageBox.Show("Vui lòng điền Lương tối thiểu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch (NullReferenceException ex) { MessageBox.Show("Vui lòng điền đầy đủ các trường", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
public bool CapNhatQuyDinhLuong(clsQuyDinhLuong_DTO QuyDinh) { SqlConnection conn = ThaoTacDuLieu.TaoVaMoKetNoi(); string sql = string.Format("UPDATE QUYDINHLUONG SET LUONGTOITHIEU = {0}, BHXH = {1},BHYT = {2}, BHTN = {3} WHERE MAQD = 'QD1'", QuyDinh.LuongToiThieu, QuyDinh.BHXH, QuyDinh.BHYT, QuyDinh.BHTN); SqlCommand cmd = ThaoTacDuLieu.TaoDoiTuongTruyVan(sql, conn); int kq = (int)cmd.ExecuteNonQuery(); ThaoTacDuLieu.DongKetNoi(conn); return(kq > 0); }
private void loadDuLieuLuong() { clsQuyDinhLuong_BUS BUS = new clsQuyDinhLuong_BUS(); clsQuyDinhLuong_DTO QuyDinh = BUS.LayQuyDinhLuong(); //Giá trị mặc định int luong = Convert.ToInt32(QuyDinh.LuongToiThieu); txtLuongCoBan.Text = string.Format("{0:#,##0}", luong); formatPhanTram(); nudBHYT_NV.Value = Convert.ToDecimal(QuyDinh.BHYT) * 100; nudBHXH_NV.Value = Convert.ToDecimal(QuyDinh.BHXH) * 100; nudBHTT_NV.Value = Convert.ToDecimal(QuyDinh.BHTN) * 100; }
public void TinhLuongTheoBangCong(int Nam, int Thang, string MaPhong) { clsTinhLuong_DAO daoTinhLuong = new clsTinhLuong_DAO(); DataTable BangChamCong = daoTinhLuong.LayBangChamCong(Nam, Thang, MaPhong); //nếu bảng chấm công có tồn tại if (BangChamCong.Rows.Count > 0) { clsQuyDinhLuong_BUS busQDL = new clsQuyDinhLuong_BUS(); clsQuyDinhLuong_DTO QDL = busQDL.LayQuyDinhLuong(); int soNgayTrongThang = DateTime.DaysInMonth(Nam, Thang); for (int i = 0; i < BangChamCong.Rows.Count; i++) { clsTinhLuong_DTO Luong = new clsTinhLuong_DTO(); DataRow r = BangChamCong.Rows[i]; string MaNV = r["MANV"].ToString(); float HSCV = daoTinhLuong.LayHeSoLuongTheoCongViec(MaNV); float HSBC = daoTinhLuong.LayHeSoLuongTheoBangCap(MaNV); int SoNgayDiLam = 0; //số ngày đi làm int SoNgayNghiKhongPhep = 0; //số ngày nghỉ không phép int SoNgayNghiCoPhep = 0; //số ngày nghủ có phép int SoNgayChuNhat = 0; //số ngày cn for (int j = 2; j < soNgayTrongThang + 2; j++) { if (r[j].ToString() != "CN") { if (r[j].ToString() == "K") { SoNgayNghiKhongPhep++; } else if (r[j].ToString() == "P") { SoNgayNghiCoPhep++; } else { string gc = r[j].ToString(); SoNgayDiLam++; //số ngày đi làm } } else { SoNgayChuNhat++; } } //if (SoNgayNghiCoPhep > 3) // SoNgayDiLam = SoNgayDiLam - (SoNgayNghiCoPhep - 3);// nghỉ 3 bữa có phép sẽ trừ 1 ngày đi làm int ngayCongChuan = soNgayTrongThang - SoNgayChuNhat; float LuongCoBan = ((float)QDL.LuongToiThieu * HSBC * HSCV); //Bc: bằng cấp, CV: bậc công việc float TongThuNhap = (LuongCoBan) / ngayCongChuan * SoNgayDiLam; //DL là số ngày đi làm double LuongDongBaoHiem = TongThuNhap * (QDL.BHYT + QDL.BHXH + QDL.BHTN); double LuongThucTe = TongThuNhap - LuongDongBaoHiem; Luong.MaNV = MaNV; Luong.HoTen = r["HO"].ToString() + " " + r["TEN"].ToString(); Luong.SoNgayDiLam = SoNgayDiLam; Luong.SoNgayNghiCoPhep = SoNgayNghiCoPhep; Luong.SoNgayNghiKhongPhep = SoNgayNghiKhongPhep; Luong.TongThuNhap = TongThuNhap; Luong.BHXH = TongThuNhap * QDL.BHXH; Luong.BHYT = TongThuNhap * QDL.BHYT; Luong.BHTN = TongThuNhap * QDL.BHTN; Luong.TienLuong = LuongThucTe; Luong.Thang = Thang; Luong.Nam = Nam; lsBangLuongTheoBangCong.Add(Luong); } //lưu bảng lương vào Database clsBangLuong_BUS busLuuBangLuong = new clsBangLuong_BUS(); busLuuBangLuong.LuuBangLuong(lsBangLuongTheoBangCong); } //#endregion }
public bool CapNhatQuyDinhLuong(clsQuyDinhLuong_DTO QuyDinh) { clsQuyDinhLuong_DAO DAO = new clsQuyDinhLuong_DAO(); return(DAO.CapNhatQuyDinhLuong(QuyDinh)); }