protected void Page_Load(object sender, EventArgs e) { if (ListChamCong == null || ListChamCongCurrent == null) { return; } Today = string.IsNullOrEmpty(NgayXuatBen) ? DateTime.Now : Convert.ToDateTime(NgayXuatBen, new CultureInfo("Vi-vn")); SoChuyenNo = ListChamCong.Count(x => x.TrangThaiNo == 1); ListChamCong = ListChamCong.Where(x => x.TrangThaiNo != 1).ToList(); var month = Today.Month; var year = Today.Year; var prevMonth = month == 1 ? 12 : month - 1; PrevMonth = new List <LichItem>(); CurrentMonth = new List <LichItem>(); var mongMotThangTruoc = new DateTime(month == 1 ? year + -1 : year, prevMonth, 1); var mongMotThangNay = new DateTime(year, month, 1); var mongMotThangSau = new DateTime(month == 12 ? year + 1 : year, month == 12 ? 1 : month + 1, 1); PrevMonthLabel = prevMonth; CurrentMonthLabel = month; Thangs = new List <ListThang>(); var listCanTruyThu = ListCanTruyThu(ListChamCong, LoaiBieuDo); for (var d = mongMotThangTruoc; d < mongMotThangNay; d = d.AddDays(1)) { var chamCongList = ListChamCong.Where(x => x.Ngay == d); var item = new LichItem { Day = d }; var chamCongs = chamCongList as List <ChamCong> ?? chamCongList.ToList(); var itemCanTruyThu = listCanTruyThu.FirstOrDefault(x => x.Day == d); if (itemCanTruyThu != null) { item.KieuChamCong = 4; } if (chamCongs.Any()) { var chamCongsItem = chamCongs[0]; // Xác định chấm công này đã được lãnh đạo duyệt hay chưa var kieuChamCong = chamCongsItem.Loai != 3 ? chamCongsItem.Loai : (chamCongsItem.Duyet ? 3 : 5); item.List.AddRange(chamCongs); item.KieuChamCong = kieuChamCong; item.SoChuyen = chamCongs.Count; } var chamCongsCurrent = ListChamCongCurrent.Where(x => x.Ngay == d).ToList(); if (chamCongsCurrent.Any()) { item.List.AddRange(chamCongsCurrent); item.KieuChamCong = chamCongsCurrent[0].Loai; item.SoChuyen += chamCongsCurrent.Count; item.TRUYTHU_ID = chamCongsCurrent[0].TRUYTHU_ID; item.PHOI_ID = chamCongsCurrent[0].PHOI_ID; item.Clickactive = true; } PrevMonth.Add(item); } Thangs.Add(new ListThang() { Ngay = PrevMonth , Thang = prevMonth , Tong = PrevMonth.Sum(x => x.SoChuyen) , TongBieuDo = TongSoChuyeBieuDo(LoaiBieuDo, year, prevMonth) }); for (var d = mongMotThangNay; d < mongMotThangSau; d = d.AddDays(1)) { var chamCongList = ListChamCong.Where(x => x.Ngay == d); var item = new LichItem { Day = d }; var chamCongs = chamCongList as List <ChamCong> ?? chamCongList.ToList(); var itemCanTruyThu = listCanTruyThu.FirstOrDefault(x => x.Day == d); if (itemCanTruyThu != null) { item.KieuChamCong = 4; } if (chamCongs.Any()) { var chamCongsItem = chamCongs[0]; // Xác định chấm công này đã được lãnh đạo duyệt hay chưa var kieuChamCong = chamCongsItem.Loai != 3 ? chamCongsItem.Loai : (chamCongsItem.Duyet ? 3 : 5); item.List.AddRange(chamCongs); item.KieuChamCong = kieuChamCong; item.SoChuyen = chamCongs.Count; } var chamCongsCurrent = ListChamCongCurrent.Where(x => x.Ngay == d).ToList(); if (chamCongsCurrent.Any()) { item.List.AddRange(chamCongsCurrent); item.KieuChamCong = chamCongsCurrent[0].Loai; item.SoChuyen += chamCongsCurrent.Count; item.Clickactive = true; item.TRUYTHU_ID = chamCongsCurrent[0].TRUYTHU_ID; item.PHOI_ID = chamCongsCurrent[0].PHOI_ID; } CurrentMonth.Add(item); } Thangs.Add(new ListThang() { Ngay = CurrentMonth , Thang = month , Tong = CurrentMonth.Sum(x => x.SoChuyen) , TongBieuDo = TongSoChuyeBieuDo(LoaiBieuDo, year, month) }); }
protected void Page_Load(object sender, EventArgs e) { if (ListChamCong == null || ListChamCongCurrent == null) { return; } ListChamCong = ListChamCong; Today = string.IsNullOrEmpty(NgayXuatBen) ? DateTime.Now : Convert.ToDateTime(NgayXuatBen, new CultureInfo("Vi-vn")); SoChuyenNo = ListChamCong.Count(x => x.TrangThaiNo == 1); if (ListChamCong.Any() && !ShowFullMonth) { TuNgay = ListChamCong.Last().Ngay; } var tuNgayDauThang = new DateTime(TuNgay.Year, TuNgay.Month, 1); var denNgayCuoiThang = new DateTime(DenNgay.Year, DenNgay.Month, 1).AddMonths(1).AddDays(-1); var listCanTruyThu = ListCanTruyThu(ListChamCong, LoaiBieuDo); Thangs = new List <ListThang>(); var listNgay = new List <LichItem>(); var listNgayTangCuong = new List <LichItem>(); var item = new LichItem(); for (var xDay = tuNgayDauThang; xDay <= denNgayCuoiThang; xDay = xDay.AddMonths(1)) { var xNgayCuoiThang = new DateTime(xDay.Year, xDay.Month, 1).AddMonths(1); listNgay = new List <LichItem>(); listNgayTangCuong = new List <LichItem>(); for (var d = xDay; d < xNgayCuoiThang; d = d.AddDays(1)) { var chamCongBinhThuong = ListChamCong.FirstOrDefault(x => x.Ngay == d && !x.TangCuong); var chamCongTangCuong = ListChamCong.FirstOrDefault(x => x.Ngay == d && x.TangCuong); var itemCanTruyThu = listCanTruyThu.FirstOrDefault(x => x.Day == d); var chamCongsCurrentBinhThuong = ListChamCongCurrent.FirstOrDefault(x => x.Ngay == d && !x.TangCuong); var chamCongsCurrentTangCuong = ListChamCongCurrent.FirstOrDefault(x => x.Ngay == d && x.TangCuong); item = new LichItem { Day = d }; item.Clickable = true; // Chỉ tính chấm công đã trả nợ if (itemCanTruyThu != null) { item.KieuChamCong = 7; } if (chamCongBinhThuong != null) { // Xác định chấm công này đã được lãnh đạo duyệt hay chưa var kieuChamCong = chamCongBinhThuong.Loai != 3 ? chamCongBinhThuong.Loai : (chamCongBinhThuong.Duyet ? 3 : 5); if (chamCongBinhThuong.TrangThaiNo == 1) { kieuChamCong = 6; } item.Item = chamCongBinhThuong; item.KieuChamCong = kieuChamCong; item.SoChuyen = 1; item.GhiChu = chamCongBinhThuong.GhiChu; item.TangCuong = chamCongBinhThuong.TangCuong; item.Clickable = false; } if (chamCongsCurrentBinhThuong != null) { item.Item = chamCongsCurrentBinhThuong; item.KieuChamCong = chamCongsCurrentBinhThuong.Loai; item.SoChuyen += 1; item.TRUYTHU_ID = chamCongsCurrentBinhThuong.TRUYTHU_ID; item.PHOI_ID = chamCongsCurrentBinhThuong.PHOI_ID; item.TangCuong = chamCongsCurrentBinhThuong.TangCuong; item.Clickactive = true; } listNgay.Add(item); item = new LichItem() { Day = d }; item.Clickable = true; if (chamCongTangCuong != null) { // Xác định chấm công này đã được lãnh đạo duyệt hay chưa var kieuChamCong = chamCongTangCuong.Loai != 3 ? chamCongTangCuong.Loai : (chamCongTangCuong.Duyet ? 3 : 5); if (chamCongTangCuong.TrangThaiNo == 1) { kieuChamCong = 6; } item.Item = chamCongTangCuong; item.KieuChamCong = kieuChamCong; item.SoChuyen = 1; item.GhiChu = chamCongTangCuong.GhiChu; item.TangCuong = chamCongTangCuong.TangCuong; item.Clickable = false; } //Ngày chấm công hiện tại if (chamCongsCurrentTangCuong != null) { item.Item = chamCongsCurrentTangCuong; item.KieuChamCong = chamCongsCurrentTangCuong.Loai; item.SoChuyen += 1; item.TRUYTHU_ID = chamCongsCurrentTangCuong.TRUYTHU_ID; item.PHOI_ID = chamCongsCurrentTangCuong.PHOI_ID; item.TangCuong = chamCongsCurrentTangCuong.TangCuong; item.Clickactive = true; } listNgayTangCuong.Add(item); } Thangs.Add(new ListThang() { Ngay = listNgay, NgayTangCuong = listNgayTangCuong, Thang = xDay.Month, Tong = listNgay.Sum(x => x.SoChuyen), TongBieuDo = TongSoChuyeBieuDo(LoaiBieuDo, xDay.Year, xDay.Month) }); } }