protected void btnCapNhat_Click(object sender, DirectEventArgs e) { try { int ngay, thang, nam; ngay = int.Parse("0" + hdfNgay.Text); thang = int.Parse(cbxMonth.SelectedItem.Value); nam = int.Parse(spnYear.Text); TinhLuongKhoanController controller = new TinhLuongKhoanController(); DAL.ChamCongKhoanAustfeed vaoRa = new DAL.ChamCongKhoanAustfeed(); if (e.ExtraParams["Edit"] == "True") { vaoRa = controller.GetByMaCanBoAndDay(hdfCanBo.Text, ngay, thang, nam); } else { DAL.ChamCongKhoanAustfeed temp = controller.GetByMaCanBoAndDay(hdfCanBo.Text, ngay, thang, nam); if (temp != null) { Dialog.ShowError("Thông tin lương khoán của cán bộ " + cbCanBo.Text + " ngày " + ngay + " đã tồn tại"); return; } } vaoRa.MaCB = hdfCanBo.Text; vaoRa.MonthYear = new DateTime(nam, thang, ngay); vaoRa.SoGioDangKy = double.Parse("0" + txtSoGioDangKy.Text.Replace(".", ",")); vaoRa.SoGioLamViec = double.Parse("0" + txtSoGioLamViec.Text.Replace(".", ",")); vaoRa.SoGioCaTo = double.Parse("0" + txtSoGioCaTo.Text.Replace(".", ",")); vaoRa.SanPhamChinh = decimal.Parse("0" + txtSanPhamChinh.Text.Replace(".", ",")); vaoRa.SanPhamPhu = decimal.Parse("0" + txtSanPhamPhu.Text.Replace(".", ",")); vaoRa.LuongSanPham = decimal.Parse("0" + txtLuongSanPham.Text); vaoRa.LuongCongNhat = decimal.Parse("0" + txtLuongCongNhat.Text); vaoRa.LuongHoTro = double.Parse("0" + txtLuongHoTro.Text.Replace('.', ',')); vaoRa.LuongKhac = decimal.Parse("0" + txtLuongKhac.Text); if (e.ExtraParams["Edit"] == "True") { controller.Update(vaoRa); Dialog.ShowNotification("Cập nhật dữ liệu thành công"); wdLuongKhoanSanXuat.Hide(); } else { controller.Insert(vaoRa); Dialog.ShowNotification("Thêm mới thành công"); if (e.ExtraParams["Close"] == "True") { wdLuongKhoanSanXuat.Hide(); } else { RM.RegisterClientScriptBlock("rlst", "ResetWindows();"); } } GridPanel1.Reload(); } catch (Exception ex) { X.Msg.Alert("Thông báo từ hệ thống", "Có lỗi xảy ra: " + ex.Message).Show(); } }
protected void ImportDataFromExcel(object sender, DirectEventArgs e) { try { int manv = 0, ngayindex = 3, sogiodk = 4, sogiolv = 5, giocato = 6, sospc = 7, sospp = 8, luongcn = 9, luongk = 10, luonght = 11; string extension = System.IO.Path.GetExtension(FileUploadField1.PostedFile.FileName).ToLower(); TinhLuongKhoanController controller = new TinhLuongKhoanController(); if (!extension.Equals(".xls") && !extension.Equals(".xlsx")) { X.Msg.Alert("Thông báo", "File bạn chọn không phải excel").Show(); return; } string fn = System.IO.Path.GetFileName(FileUploadField1.PostedFile.FileName); string saveLocation = Server.MapPath("File") + "\\" + fn; List <Row> dataExcel = ExcelEngine.GetInstance().GetDataFromExcel(saveLocation, cbSheetName.SelectedItem.Value, 0); int count = 0; int thang = int.Parse(cbxMonth.SelectedItem.Value); int nam = int.Parse("0" + spnYear.Text); FileInfo file; foreach (Row item in dataExcel) { try { if (count > 20) { break; } if (string.IsNullOrEmpty(item[manv])) { count++; } else { count = 0; DAL.ChamCongKhoanAustfeed chamCong = new DAL.ChamCongKhoanAustfeed(); chamCong.MaCB = item[manv].ToString(); string a = ""; if (chamCong.MaCB == "10699") { a = ""; } float luong = 0; string maBoPhan = string.Empty; // lấy lương DataTable table = DataController.DataHandler.GetInstance().ExecuteDataTable("TienLuong_LuongKhoan_GetInfoEmployeeByMaCB", "@MaCB", chamCong.MaCB); if (table.Rows.Count > 0) { try { maBoPhan = table.Rows[0]["MA_DONVI"].ToString(); } catch (Exception) { } try { luong = float.Parse(table.Rows[0]["LuongCung"].ToString()); } catch (Exception) { } } int ngay = int.Parse("0" + item[ngayindex].ToString()); chamCong.MonthYear = new DateTime(nam, thang, ngay); try { chamCong.SoGioDangKy = double.Parse(item[sogiodk].ToString().Replace(".", ",")); } catch (Exception) { } try { chamCong.SoGioLamViec = double.Parse(item[sogiolv].ToString().Replace(".", ",")); } catch (Exception) { } try { chamCong.SoGioCaTo = double.Parse(item[giocato].ToString().Replace(".", ",")); } catch (Exception) { } try { chamCong.SanPhamChinh = decimal.Parse("0" + item[sospc].ToString().Replace(".", ",")); } catch (Exception) { } try { chamCong.SanPhamPhu = decimal.Parse("0" + item[sospp].ToString().Replace(".", ",")); } catch (Exception) { } chamCong.LuongCongNhat = decimal.Parse("0" + item[luongcn].ToString()); chamCong.LuongKhac = decimal.Parse("0" + item[luongk].ToString()); chamCong.LuongHoTro = double.Parse("0" + item[luonght].ToString()); if (chamCong.SoGioDangKy == 0) { chamCong.SoGioDangKy = 1; } if (chamCong.SoGioLamViec < 0) { continue; } decimal sanLuong = (decimal)((double)chamCong.SanPhamChinh / chamCong.SoGioDangKy); string congthucstring = ""; DAL.CongThucKhoanSanXuat congthuc = new CongThucKhoanSanXuatControler().GetByMaBoPhanVaSanLuong(maBoPhan, sanLuong); if (congthuc != null) { congthucstring = congthuc.CongThuc; } try { // lấy công chuẩn double congchuan = new ThietLapCaTheoBoPhanController().GetCongChuan(maBoPhan); congthucstring = congthucstring.Replace("Luong", luong.ToString()) .Replace("CongChuan", congchuan.ToString()) .Replace("SanPhamChinh", chamCong.SanPhamChinh.ToString()) .Replace("SanPhamPhu", chamCong.SanPhamPhu.ToString()) .Replace("TongGio", chamCong.SoGioCaTo.ToString()) .Replace("SoGioDangKy", chamCong.SoGioDangKy.ToString()) .Replace("SoGioLamViec", chamCong.SoGioLamViec.ToString()) .Replace("TrongSo", congthuc.TrongSo.ToString()) .Replace(",", ".") .Replace("/0", "/1"); string value = new DataTable().Compute(congthucstring, null).ToString(); chamCong.LuongSanPham = Math.Round(decimal.Parse(value), 0); } catch (Exception) { chamCong.LuongSanPham = 0; } DAL.ChamCongKhoanAustfeed temp = controller.GetByMaCanBoAndDay(chamCong.MaCB, ngay, thang, nam); if (temp == null) { controller.Insert(chamCong); } else { controller.Update(chamCong); } } } catch (Exception ex) { file = new FileInfo(saveLocation); if (file.Exists) { file.Delete(); } } } file = new FileInfo(saveLocation); if (file.Exists) { file.Delete(); } Dialog.ShowNotification("Nhập dữ liệu thành công"); GridPanel1.Reload(); wdNhapTuExcel.Hide(); } catch (Exception ex) { Dialog.ShowError(ex.Message); } }