/// <summary>
        /// The create data source.
        /// </summary>
        /// <param name="date">
        /// The date.
        /// </param>
        /// <returns>
        /// The <see cref="DataTable"/>.
        /// </returns>
        private DataTable CreateDataSource()
        {
            var date        = (DateTime)(this.Session["Date"] ?? DateTime.Today);
            var startOfWeek = date.AddDays(-1 * (int)date.DayOfWeek);

            var projectList = projectModule.ProjectList(this.Session["EmpNr"] as string);

            var dt = timeLogModule.FetchLog(this.Session["EmpNr"] as string, projectList, startOfWeek, startOfWeek.AddDays(7));

            this.Session["GridTable"] = dt;

            return(dt);
        }
Beispiel #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                this.ProjectDropDown.Items.Clear();
                this.ChartViewDropDown.Items.Clear();

                var projectList = projectModule.ProjectList(this.Session["EmpNr"] as string);

                this.ProjectDropDown.Items.AddRange(projectList.Select(x => new ListItem(x)).ToArray());
                foreach (var seriesChartType in Enum.GetNames(typeof(SeriesChartType)))
                {
                    this.ChartViewDropDown.Items.Add(new ListItem(seriesChartType));
                }
            }
        }
        /// <summary>
        /// The create data source.
        /// </summary>
        /// <param name="date">
        /// The date.
        /// </param>
        /// <returns>
        /// The <see cref="DataTable"/>.
        /// </returns>
        private DataTable CreateDataSource()
        {
            var date        = (DateTime)(this.Session["Date"] ?? DateTime.Today);
            var startOfWeek = date.AddDays(-1 * (int)date.DayOfWeek);

            var projectList = projectModule.ProjectList(this.Session["EmpNr"] as string);

            var dt = timeLogModule.FetchLog(this.Session["EmpNr"] as string, projectList, startOfWeek, startOfWeek.AddDays(7));

            var grid = new DataTable();

            grid.Columns.Add("WorkDay");
            grid.PrimaryKey = new[] { grid.Columns["WorkDay"] };
            grid.Columns.AddRange(projectList.Select(x => new DataColumn($"{x}")).ToArray());

            for (var i = startOfWeek; i < startOfWeek.AddDays(7); i = i.AddDays(1))
            {
                grid.Rows.Add(i.ToShortDateString());
            }

            grid.BeginLoadData();
            foreach (DataRow dtrow in dt.Rows)
            {
                var itemArray = new string[dtrow.ItemArray.Length];
                itemArray[0] = DateTime.Parse(dtrow.ItemArray[0].ToString()).ToShortDateString();
                for (var i = 1; i < dtrow.ItemArray.Length; i++)
                {
                    itemArray[i] = dtrow.ItemArray[i].ToString();
                }

                grid.LoadDataRow(itemArray.Select(x => (object)x).ToArray(), LoadOption.OverwriteChanges);
            }
            grid.EndLoadData();
            this.Session["GridTable"] = grid;

            return(grid);
        }
Beispiel #4
0
        public IEnumerable <string> FetchProjectList()
        {
            var result = projectModule.ProjectList(Thread.CurrentPrincipal.Identity.Name);

            return(result);
        }