Example #1
0
 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);
        }
Example #3
0
 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);
        }