public ListColumnName(DateTime ThangNam, int ID_NhanVien) { DateTime start = new DateTime(ThangNam.Year, ThangNam.Month, 1); DateTime end = new DateTime(start.Year, start.Month, 1).AddMonths(1).AddDays(-1); lstColumnName = new Dictionary <string, List <double> >(); string HoVaTen = data.NHANSUs.Find(ID_NhanVien).HoVaTen; //item At Work - WFH List <double> tmpAtWork = new List <double>(); List <double> tmpWFH = new List <double>(); lstWorkingDaysForStaffOfMonth = data.fnDisplayWorkingDaysStaffOfMonth(HoVaTen, ThangNam).ToList(); for (int i = 0; i < lstWorkingDaysForStaffOfMonth.Count; i++) { tmpAtWork.Add((double)(Weekdays(start, end) - CalculateTotalOFFDayInWeekdays(lstWorkingDaysForStaffOfMonth[i].ID, start, end) - (lstWorkingDaysForStaffOfMonth[i].WFH.HasValue ? lstWorkingDaysForStaffOfMonth[i].WFH.Value : 0))); tmpWFH.Add((double)((lstWorkingDaysForStaffOfMonth[i].WFH.HasValue ? lstWorkingDaysForStaffOfMonth[i].WFH.Value : 0))); } lstColumnName.Add("At_Work", tmpAtWork); lstColumnName.Add("WFH", tmpWFH); //them toan bo PC vao list foreach (var item in data.PHUCAPs.ToList()) { List <fnGetAmountBenefit_Result> tmpBenefit = data.fnGetAmountBenefit(HoVaTen, start, item.ID, end).ToList(); List <double> tmpAmountBenefit = new List <double>(); foreach (var item1 in tmpBenefit) { tmpAmountBenefit.Add(Decimal.ToDouble((decimal)(item1.PC_CoDinh.HasValue ? item1.PC_CoDinh.Value : 0))); } lstColumnName.Add(item.TenPhuCap.Replace(" ", ""), tmpAmountBenefit); } }