using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace Education.Forms.簽核 { public partial class 簽核 : FormBase { private Dictionary 檢視畫面對應 = new Dictionary(); protected void Page_Load(object sender, EventArgs e) { FunctionName = "表單簽核"; 檢視畫面對應.Add("課程企劃", "~/Forms/檢視UC/訓練課程企劃書View.ascx"); 檢視畫面對應.Add("場地遴選", "~/Forms/檢視UC/場地遴選View.ascx"); 檢視畫面對應.Add("講師遴選", "~/Forms/檢視UC/講師遴選View.ascx"); 檢視畫面對應.Add("教材遴選", "~/Forms/檢視UC/教材遴選View.ascx"); 檢視畫面對應.Add("教學日誌暨異常狀況", "~/Forms/檢視UC/教學日誌暨異常狀況View.ascx"); 檢視畫面對應.Add("處理結果追蹤", "~/Forms/檢視UC/教學日誌暨異常狀況View.ascx"); 檢視畫面對應.Add("教育訓練效益追蹤調查表", "~/Forms/檢視UC/教育訓練效益追蹤調查表View.ascx"); 檢視畫面對應.Add("訓練檢討報告", "~/Forms/檢視UC/訓練檢討報告View.ascx"); AddTabButton(MultiView1, View1, LinkButton1); AddTabButton(MultiView1, View2, LinkButton2); AddTabButton(MultiView1, View3, LinkButton3); if (!IsPostBack) { ActivateTab(MultiView1, View1); txt送簽日期1.Value = new DateTime(DateTime.UtcNow.AddHours(8).Date.Year, DateTime.UtcNow.AddHours(8).Date.Month, 1); txt送簽日期2.Value = new DateTime(DateTime.UtcNow.AddHours(8).Date.Year, DateTime.UtcNow.AddHours(8).Date.Month, 1).AddMonths(2).AddDays(-1); } else { GridView1.DataBind(); GridView2.DataBind(); gv我的表單.DataBind(); } } protected void ds要簽核的表單_ObjectCreating(object sender, ObjectDataSourceEventArgs e) { e.ObjectInstance = Dao表單簽核主檔; } protected void ds已簽核的表單_ObjectCreating(object sender, ObjectDataSourceEventArgs e) { e.ObjectInstance = Dao表單簽核主檔; } protected override void AfterChangeTab() { base.AfterChangeTab(); if (MultiView1.ActiveViewIndex == 0) { GridView1.DataBind(); } else if (MultiView1.ActiveViewIndex == 1) { GridView2.DataBind(); } } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { foreach (GridViewRow row in (sender as GridView).Rows) SetGridViewMouseBehavier(sender as GridView, row); 表單簽核主檔 status = Dao表單簽核主檔.GetLastStatus(DAC_BCLS.GetInt32(GridView1.SelectedValue)); if (status != null) { 送簽1.表單類別 = status.表單類別ID; 送簽1.表單ID = status.表單ID; 送簽1.編號2 = status.編號2; 送簽1.DataBind(); 送簽1.Refresh(); UserControlBase ctrl = LoadControl(檢視畫面對應[status.表單類別ID]) as UserControlBase; ctrl.ParentPage = this; ctrl.單號 = status.表單ID; ctrl.DataBind(); PlaceHolder1.Controls.Clear(); PlaceHolder1.Controls.Add(ctrl); } } protected void GridView2_SelectedIndexChanged(object sender, EventArgs e) { foreach (GridViewRow row in (sender as GridView).Rows) SetGridViewMouseBehavier(sender as GridView, row); 表單簽核主檔 status = Dao表單簽核主檔.GetLastStatus(DAC_BCLS.GetInt32(GridView2.SelectedValue)); if (status != null) { 送簽2.表單類別 = status.表單類別ID; 送簽2.表單ID = status.表單ID; 送簽2.編號2 = status.編號2; 送簽2.DataBind(); 送簽2.Refresh(); UserControlBase ctrl = LoadControl(檢視畫面對應[status.表單類別ID]) as UserControlBase; ctrl.ParentPage = this; ctrl.單號 = status.表單ID; ctrl.DataBind(); PlaceHolder1.Controls.Clear(); PlaceHolder1.Controls.Add(ctrl); } } protected void GridView3_SelectedIndexChanged(object sender, EventArgs e) { foreach (GridViewRow row in (sender as GridView).Rows) SetGridViewMouseBehavier(sender as GridView, row); 表單簽核主檔 status = Dao表單簽核主檔.GetLastStatus(DAC_BCLS.GetInt32(gv我的表單.SelectedValue)); if (status != null) { 送簽3.表單類別 = status.表單類別ID; 送簽3.表單ID = status.表單ID; 送簽3.編號2 = status.編號2; 送簽3.DataBind(); 送簽3.Refresh(); UserControlBase ctrl = LoadControl(檢視畫面對應[status.表單類別ID]) as UserControlBase; ctrl.ParentPage = this; ctrl.單號 = status.表單ID; ctrl.DataBind(); PlaceHolder1.Controls.Clear(); PlaceHolder1.Controls.Add(ctrl); } } protected new void GridView_DataBound(object sender, EventArgs e) { GridView GV = sender as GridView; if (GV.SelectedIndex == -1) GV.SelectedIndex = 0; if (GV.SelectedIndex >= GV.Rows.Count) GV.SelectedIndex = GV.Rows.Count - 1; if (GV == GridView1) { GridView1_SelectedIndexChanged(sender, e); 送簽1.Visible = GV.Rows.Count > 0; if (!送簽1.Visible) { PlaceHolder1.Controls.Clear(); } } else if (GV == GridView2) { GridView2_SelectedIndexChanged(sender, e); 送簽2.Visible = GV.Rows.Count > 0; if (!送簽2.Visible) { PlaceHolder1.Controls.Clear(); } } else if (GV == gv我的表單) { GridView3_SelectedIndexChanged(sender, e); 送簽3.Visible = GV.Rows.Count > 0; if (!送簽3.Visible) { PlaceHolder1.Controls.Clear(); } } pnlContent.Visible = 送簽1.Visible || 送簽2.Visible || 送簽3.Visible; } protected new void GridView_PageIndexChanged(object sender, EventArgs e) { GridView GV = sender as GridView; GV.SelectedIndex = 0; GV.DataBind(); } protected new void GridView_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { SetGridViewMouseBehavier(sender as GridView, e.Row); } } protected void 送簽1_Clicked(object sender, EventArgs e) { GridView1.DataBind(); } protected void 送簽2_Clicked(object sender, EventArgs e) { GridView2.DataBind(); } protected void btn查詢我的表單_Click(object sender, EventArgs e) { gv我的表單.DataBind(); } } }