Exemplo n.º 1
0
        protected void dlOuterSANAL_ItemDataBound(object sender, DataListItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                DataList    dlInnerSANAL = e.Item.FindControl("dlInnerSANAL") as DataList;
                HiddenField hfRecordID   = e.Item.FindControl("hfRecordID") as HiddenField;

                //Make sure a record is found from the current row's rms_record_id
                var tRecord = db.Records.FirstOrDefault(p => p.rms_record_id.ToString() == hfRecordID.Value.ToString());

                if (tRecord != null)
                {
                    DateTime period_beg_dt, period_end_dt;
                    if (rdpBeginDt.SelectedDate == null)
                    {
                        period_beg_dt = Convert.ToDateTime(String.Format("10/01/{0}", DateTime.Now.Year - 1));
                    }
                    else
                    {
                        period_beg_dt = Convert.ToDateTime(rdpBeginDt.SelectedDate);
                    }
                    if (rdpEndDt.SelectedDate == null)
                    {
                        period_end_dt = DateTime.Now;
                    }
                    else
                    {
                        period_end_dt = Convert.ToDateTime(rdpEndDt.SelectedDate);
                    }

                    List <AnalysisNotesItem> lani = new List <AnalysisNotesItem>();
                    //Grab all analysis periods within this timespan
                    var periods = tRecord.RecordAnalysisPeriods
                                  .Where(p => p.period_end_dt >= period_beg_dt && p.period_beg_dt <= period_end_dt)
                                  .OrderByDescending(p => p.period_beg_dt).ToList();

                    foreach (var period in periods)
                    {
                        AnalysisNotesItem ani = new AnalysisNotesItem
                        {
                            timespan          = String.Format("{0:MM/dd/yyyy} to {1:MM/dd/yyyy}", period.period_beg_dt, period.period_end_dt),
                            analysis_notes_va = period.analysis_notes_va.FormatParagraphOut(),
                            edited_dt         = period.PeriodChangeLogs.Count() > 0 ? String.Format("{0}", period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_dt) : "unavailable",
                            edited_by_uid     = period.PeriodChangeLogs.Count() > 0 ? period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_by_uid : "unavailable",
                            analyzed_by       = period.analyzed_by,
                            analyzed_dt       = String.Format("{0:MM/dd/yyyy}", period.analyzed_dt),
                            approved_by       = period.approved_by,
                            approved_dt       = String.Format("{0:MM/dd/yyyy}", period.approved_dt)
                        };
                        lani.Add(ani);
                    }

                    dlInnerSANAL.DataSource = lani;
                    dlInnerSANAL.DataBind();
                }
            }
        }
Exemplo n.º 2
0
        protected void SetupWYAnalysisNotesPanel()
        {
            List <AnalysisNotesItem> lani = new List <AnalysisNotesItem>();

            if (PeriodID == 0)
            {
                //Figure out the begin and end dates to use for the WY timespan
                if (beg_dt == null && end_dt == null)
                {
                    DateTime currDate = DateTime.Now;
                    int      currWY;
                    if (currDate.Month < 4)
                    {
                        currWY = DateTime.Now.Year - 2;
                    }
                    else
                    {
                        currWY = DateTime.Now.Year - 1;
                    }
                    beg_dt = Convert.ToDateTime("10/1/" + currWY.ToString());
                    end_dt = DateTime.Now;
                }

                //Grab all analysis periods within this timespan
                var periods = currRecord.RecordAnalysisPeriods.Where(p => p.period_end_dt >= beg_dt && p.period_beg_dt <= end_dt).OrderByDescending(p => p.period_beg_dt).ToList();

                foreach (var period in periods)
                {
                    AnalysisNotesItem ani = new AnalysisNotesItem
                    {
                        timespan          = String.Format("{0:MM/dd/yyyy} to {1:MM/dd/yyyy}", period.period_beg_dt, period.period_end_dt),
                        analysis_notes_va = period.analysis_notes_va.FormatParagraphOut(),
                        edited_dt         = period.PeriodChangeLogs.Count() > 0 ? String.Format("{0}", period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_dt) : "unavailable",
                        edited_by_uid     = period.PeriodChangeLogs.Count() > 0 ? period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_by_uid : "unavailable",
                        analyzed_by       = period.analyzed_by,
                        analyzed_dt       = String.Format("{0:MM/dd/yyyy}", period.analyzed_dt),
                        approved_by       = period.approved_by,
                        approved_dt       = String.Format("{0:MM/dd/yyyy}", period.approved_dt)
                    };
                    lani.Add(ani);
                }

                ltlReportTitle.Text = "WY Analysis";
            }
            else
            {
                var period = currRecord.RecordAnalysisPeriods.FirstOrDefault(p => p.period_id == PeriodID);

                AnalysisNotesItem ani = new AnalysisNotesItem
                {
                    timespan          = String.Format("{0:MM/dd/yyyy} to {1:MM/dd/yyyy}", period.period_beg_dt, period.period_end_dt),
                    analysis_notes_va = period.analysis_notes_va.FormatParagraphOut(),
                    edited_dt         = String.Format("{0}", period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_dt),
                    edited_by_uid     = period.PeriodChangeLogs.OrderByDescending(b => b.edited_dt).FirstOrDefault().edited_by_uid,
                    analyzed_by       = period.analyzed_by,
                    analyzed_dt       = String.Format("{0:MM/dd/yyyy}", period.analyzed_dt),
                    approved_by       = period.approved_by,
                    approved_dt       = String.Format("{0:MM/dd/yyyy}", period.approved_dt)
                };
                lani.Add(ani);

                ltlReportTitle.Text = "Station Analysis";
            }

            if (lani.Count == 0)
            {
                ltlNoPeriods.Visible = true;
            }
            pnlWYAnalysisNotes.Visible   = true;
            dlWYAnalysisNotes.DataSource = lani;
            dlWYAnalysisNotes.DataBind();
        }