public DataTable FarmersVillageList(string FarmerID) { return(UnitInformation_DL.FarmersVillageList(FarmerID)); }
public DataTable Newplan(int year, decimal DaysPerFarmer, DateTime startDate, DateTime endDate, string role) { int count = 0; DataTable dtNewPlan = new DataTable(); DataTable dtHolidays = Holidays(year, startDate, endDate); DateTime planDate; DateTime planDate1 = startDate; DataTable dtdate = new DataTable(); dtdate.Columns.Add("Village"); dtdate.Columns.Add("PlanDate"); dtdate.Columns.Add("InspectorID"); dtdate.Columns.Add("InspectorName"); DataTable farmervillages = UnitInformation_DL.FarmersVillageList(); Random randomdate = new Random(); for (int v = 0; v < farmervillages.Rows.Count; v++) { for (int d = 0; d < 5; d++) { DataRow newrow = dtdate.NewRow(); newrow["Village"] = farmervillages.Rows[v]["City_Village"].ToString(); if (planDate1 >= startDate && planDate1 <= endDate) { int range = ((TimeSpan)(Convert.ToDateTime(endDate) - Convert.ToDateTime(startDate))).Days; planDate = Convert.ToDateTime(startDate).AddDays(randomdate.Next(range)); DataTable EmployeeTable = BranchsRolesEmployees_DL.GetEmployeBasedonRoleID(role); if (EmployeeTable.Rows.Count > 0) { int getunitID = new Random().Next(0, EmployeeTable.Rows.Count); if (count == 0) { newrow["InspectorID"] = EmployeeTable.Rows[getunitID]["EmployeeId"].ToString(); newrow["InspectorName"] = EmployeeTable.Rows[getunitID]["EmployeeFristName"].ToString(); count++; } else { newrow["InspectorID"] = EmployeeTable.Rows[count]["EmployeeId"].ToString(); newrow["InspectorName"] = EmployeeTable.Rows[count]["EmployeeFristName"].ToString(); } } if (planDate.DayOfWeek.ToString().ToLower() == "sunday") { planDate = planDate.AddDays(1); } if (planDate.DayOfWeek.ToString().ToLower() != "sunday") { for (int hcount = 0; hcount < dtHolidays.Rows.Count; hcount++) { if (DateTime.Compare(planDate, Convert.ToDateTime(dtHolidays.Rows[hcount]["HolidayDate"].ToString().Trim())) == 0) { planDate = planDate.AddDays(1); hcount = -1; } } if (planDate.DayOfWeek.ToString().ToLower() == "sunday") { planDate = planDate.AddDays(1); } newrow["PlanDate"] = planDate.ToShortDateString(); } } dtdate.Rows.Add(newrow); } } return(dtdate); }
public DataTable FarmersVillageList() { return(UnitInformation_DL.FarmersVillageList()); }
// new code testing purpose public DataTable Newoneplan(int year, decimal DaysPerFarmer, DateTime startDate, DateTime endDate, string role) { DataTable dtNewPlan = new DataTable(); dtNewPlan.Columns.Add("FarmerID"); dtNewPlan.Columns.Add("FarmerName"); dtNewPlan.Columns.Add("FarmerCode"); dtNewPlan.Columns.Add("FarmerArea"); dtNewPlan.Columns.Add("InspectorID"); dtNewPlan.Columns.Add("InspectorName"); dtNewPlan.Columns.Add("PlanDate"); dtNewPlan.Columns.Add("VisitedDate"); dtNewPlan.Columns.Add("InspectionID"); List <DateTime> dates = GetDates(year, startDate, endDate); DataTable dtHolidays = InspectionPlan_DL.Holidays(year, startDate, endDate); foreach (DataRow item in dtHolidays.Rows) { string stDate = Convert.ToString(item["HolidayDate"]); if (stDate.Contains("/")) { string[] keys = stDate.Split('/'); DateTime hdate = new DateTime(Convert.ToInt32(keys[2]), Convert.ToInt32(keys[0]), Convert.ToInt32(keys[1])); if (hdate.DayOfWeek != DayOfWeek.Sunday && dates.Contains(hdate)) { dates.Remove(new DateTime(Convert.ToInt32(keys[2]), Convert.ToInt32(keys[0]), Convert.ToInt32(keys[1]))); } } } dates = dates.OrderBy(m => m).ToList(); DataTable farmervillages = UnitInformation_DL.FarmersVillageList(); int c = farmervillages.Rows.Count; int mod = Convert.ToInt32(dates.Count / c); int l = Convert.ToInt32(dates.Count % c); List <MudarVillage> villages = new List <MudarVillage>(); foreach (DataRow item in farmervillages.Rows) { MudarVillage village = new MudarVillage(); village.VillageName = Convert.ToString(item["City_Village"]); village.loopCount = mod; villages.Add(village); } for (int i = 0; i < l; i++) { villages[i].loopCount += 1; } DataTable EmployeeTable = BranchsRolesEmployees_DL.GetEmployeBasedonRoleID(role); List <MudarEmployee> emps = new List <MudarEmployee>(); foreach (DataRow item in EmployeeTable.Rows) { MudarEmployee emp = new MudarEmployee(); emp.EmployeeID = new Guid(Convert.ToString(item["EmployeeId"])); emp.EmployeeName = Convert.ToString(item["EmployeeFristName"]); emps.Add(emp); } bool first = false; int h = 0; int village2 = 0; Random random = new Random(); for (int wd = 0; wd < dates.Count; wd++) { for (int vil = h; vil < 2; vil++) { string village = string.Empty; int getID = random.Next(0, farmervillages.Rows.Count); village = farmervillages.Rows[getID]["City_Village"].ToString(); DataTable dtFarmer = Farmer_DL.GetFarmerlistVillagewise(village); for (int r = 0; r < dtNewPlan.Rows.Count; r++) { string farmersid = string.Empty; DataTable newdt = new DataTable(); farmersid = dtNewPlan.Rows[r]["FarmerID"].ToString(); for (int fv = 0; fv < dtFarmer.Rows.Count; fv++) { if (dtNewPlan.Rows[r]["FarmerID"].ToString() == dtFarmer.Rows[fv]["FarmerID"].ToString()) { } } } int p = (Convert.ToInt32(dtFarmer.Rows.Count.ToString()) / mod); for (int f = 0; f < p; f++) { DataRow newrow = dtNewPlan.NewRow(); newrow["InspectionID"] = "0"; newrow["FarmerID"] = dtFarmer.Rows[f]["FarmerID"]; newrow["FarmerName"] = dtFarmer.Rows[f]["FirstName"]; newrow["FarmerCode"] = dtFarmer.Rows[f]["FarmerCode"]; newrow["FarmerArea"] = dtFarmer.Rows[f]["City_Village"]; if (first == false) { newrow["InspectorID"] = emps[0].EmployeeID; newrow["InspectorName"] = emps[0].EmployeeName; //first = true; } else { newrow["InspectorID"] = emps[1].EmployeeID; newrow["InspectorName"] = emps[1].EmployeeName; //first = false; } newrow["PlanDate"] = dates[wd].ToShortDateString(); newrow["VisitedDate"] = dates[wd].ToShortDateString(); dtNewPlan.Rows.Add(newrow); } first = true; village2 = village2 + 1; h++; if (village2 == 2) { //wd = wd + 1; village2 = 0; first = false; h = 0; break; } } } return(dtNewPlan); }