836 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			836 lines
		
	
	
		
			30 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | using System; | |||
|  | using System.Data; | |||
|  | using System.IO; | |||
|  | using System.Text; | |||
|  | using System.Transactions; | |||
|  | using System.Web; | |||
|  | using System.Web.UI; | |||
|  | using System.Web.UI.HtmlControls; | |||
|  | using System.Web.UI.WebControls; | |||
|  | using DeiNiu.wms.Logical; | |||
|  | using DeiNiu.Utils; | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  | public partial class ProjectApprove : PageBase | |||
|  |     { | |||
|  |         private LProject _logic; | |||
|  |         private string authType = ""; | |||
|  |         protected void Page_Load(object sender, EventArgs e) | |||
|  |         { | |||
|  |            | |||
|  |          | |||
|  |             //   divPreApproveSubmit.Visible = authType.Equals("100"); //<2F><>ְ<EFBFBD><D6B0>¼ | |||
|  |             //    divApproveSubmit.Visible = authType.Equals("200");  //<2F><>ְ<EFBFBD><D6B0>¼ | |||
|  |             //   emId = Master.lem.GetEmployee.ID; masterpage has not been initialized yet | |||
|  |           | |||
|  |        <20><><EFBFBD><EFBFBD> authType = Request.QueryString[0] ; | |||
|  |             if (!IsPostBack) | |||
|  |             { | |||
|  |                 if (lem == null) return ; | |||
|  |                 _logic = new LProject(); | |||
|  |                 initializeControles(); | |||
|  |                 Databound(); | |||
|  |             } | |||
|  |             SessionSeting(); | |||
|  |              | |||
|  |           | |||
|  |         } | |||
|  |   | |||
|  |         /*****************************************   private methods   ******************************************/ | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// bound the query list. | |||
|  |         /// </summary> | |||
|  |         private void Databound() | |||
|  |         { | |||
|  |             GridView1.DataSource = GetProjectListByRole(); | |||
|  |             GridView1.DataBind(); | |||
|  |             UpdateSession(); | |||
|  |             //    btnSubmit.Enabled = false; | |||
|  |             ClearProjDetailData(); | |||
|  |             ClearProjData(); | |||
|  |             PanelApprove.Visible = false; | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// ͨ<><CDA8><EFBFBD>жϵ<D0B6>ǰ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>Ŀ<EFBFBD>б<EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <returns></returns> | |||
|  |         DataView GetProjectListByRole() | |||
|  |         { | |||
|  |             if(authType.Equals("100")) //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |             { | |||
|  |                 if (lem.CanShenHe || lem.CanYuShen)   //  <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8>  | |||
|  |                 { | |||
|  |                       return _logic.Get4ApproveList(lem.GetCanApproveDeptList(),btnYear.Text, rdblstMonth.SelectedValue).DefaultView; | |||
|  |                    | |||
|  |                 } | |||
|  |                 | |||
|  |             } | |||
|  |               | |||
|  |               if (authType.Equals("200"))  | |||
|  |             if (lem.CanKaoHe )   //  <20><><EFBFBD><EFBFBD> | |||
|  |             { | |||
|  |                DataView dv = _logic.GetProjectsByYearMonth(btnYear.Text, rdblstMonth.SelectedValue).DefaultView; | |||
|  |                dv.RowFilter = "pj_status in('" + ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> + "','" + ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> + "','" +ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>+ "') and pd_status not in ('" | |||
|  |                    + ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> + "','" +ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>δͨ<CEB4><CDA8> +"')"  +  | |||
|  |                    "  or pd_status in('" + ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> + "')"; | |||
|  |                 return dv; | |||
|  | 
 | |||
|  |             } | |||
|  |          | |||
|  |         if (authType.Equals("300")) | |||
|  |             if (lem.CanKaoHe)   //  <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7>¼ | |||
|  |             { | |||
|  |                 DataView dv = _logic.GetKaoHeHistoryProjectsByYearMonth(btnYear.Text, rdblstMonth.SelectedValue).DefaultView; | |||
|  |                 dv.RowFilter = "pj_status in('" + ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> + "','" + ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> + "')"; | |||
|  |                 return dv; | |||
|  | 
 | |||
|  |             } | |||
|  |             | |||
|  |             return new DataView(); | |||
|  |         } | |||
|  | 
 | |||
|  |     void initializeControles() | |||
|  |         { | |||
|  |             btnYear.Text = DateTime.Today.Year.ToString(); | |||
|  |             rdblstMonth.SelectedItem.Selected = false; | |||
|  |             rdblstMonth.Items.FindByValue(DateTime.Today.Month.ToString()).Selected = true; | |||
|  |         | |||
|  |             drpdProjlisFromYear.Items.Clear(); | |||
|  |             drplstProjectToYear.Items.Clear(); | |||
|  |         | |||
|  |             for (int i = DateTime.Now.Year-10; i < DateTime.Now.Year + 10; i++) | |||
|  |             { | |||
|  |                 ListItem li = new ListItem(i.ToString(),i.ToString()); | |||
|  |                 drpdProjlisFromYear.Items.Add(li); | |||
|  |                 drplstProjectToYear.Items.Add(li);  | |||
|  |             } | |||
|  |             SetDropDownlistSelection(drplstProjectToYear, DateTime.Now.Year.ToString()); | |||
|  |             SetDropDownlistSelection(drpdProjlisFromYear, DateTime.Now.Year.ToString()); | |||
|  | 
 | |||
|  |             drplstProjDept.DataSource = lem.GetEmployee.GetDepartments(); | |||
|  |             drplstProjDept.DataTextField = "DEP_NAME"; | |||
|  |             drplstProjDept.DataValueField = "ID"; | |||
|  |             drplstProjDept.DataBind(); | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void SessionSeting() | |||
|  |         { | |||
|  |             if (IsPostBack) | |||
|  |             { | |||
|  |                | |||
|  |                 _logic = (LProject)Session[appScope.PagelevelObj]; | |||
|  |             } | |||
|  |         } | |||
|  |      | |||
|  |         private void UpdateSession() | |||
|  |         { | |||
|  |    | |||
|  |             Session[appScope.PagelevelObj] = _logic; | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// <20><EFBFBD>ǰ<EFBFBD><C7B0>Ŀ<EFBFBD><C4BF>Ϣ<EFBFBD><CFA2>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2> | |||
|  |         /// </summary> | |||
|  |         void ProjectDataBind() | |||
|  |         { | |||
|  |             ProjectDetail.Visible = true; | |||
|  |             txtProjectName.Text = _logic.GetProject.pj_name; | |||
|  |             SetDropDownlistSelection(drpdProjlisFromYear, Convert.ToDateTime(_logic.GetProject.pj_planStartDate) .Year.ToString()); | |||
|  |             SetDropDownlistSelection(drplstProjFromMonth, Convert.ToDateTime(_logic.GetProject.pj_planStartDate).Month.ToString()); | |||
|  |             SetDropDownlistSelection(drplstProjectToYear, Convert.ToDateTime(_logic.GetProject.pj_planEndDate).Year.ToString()); | |||
|  |             SetDropDownlistSelection(drlstProjToMonth, Convert.ToDateTime(_logic.GetProject.pj_planEndDate).Month.ToString()); | |||
|  |     | |||
|  |             txtPrjDesc.Text = _logic.GetProject.pj_mem; | |||
|  |             txtProjProgress.Text = _logic.GetProject.pj_progress.ToString();  //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> | |||
|  |             txtProjPercent.Text = _logic.GetProject.pj_percent.ToString();    //<2F><>ĿȨ<C4BF><C8A8> | |||
|  |             SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); | |||
|  |             txtProjMem4delete.Visible = _logic.GetProject.pj_status == DeiNiu.Utils.ProjectStatus.<2E><><EFBFBD><EFBFBD>δ<EFBFBD>ύ; | |||
|  |             lbprjmem4Delete.Visible = _logic.GetProject.pj_status == DeiNiu.Utils.ProjectStatus.<2E><><EFBFBD><EFBFBD>δ<EFBFBD>ύ; | |||
|  |             txtProjMem4delete.Text = _logic.GetProject.pj_mem4del; | |||
|  |             validControles(); | |||
|  |             ApproveListBind(_logic.GetProject.ID); | |||
|  |              | |||
|  |             SetDropDownlistSelection(drplstProjDept,   _logic.GetProject.pj_dept.ToString() ); | |||
|  |             divApproveScore.Visible = false; | |||
|  |         } | |||
|  |     | |||
|  |        void ApproveListBind(int id) | |||
|  |        { | |||
|  |            RepeaterApproveList.DataSource = _logic.PaObj.GetApproveListByTastkId(id); | |||
|  |            RepeaterApproveList.DataBind(); | |||
|  |            panelApprovelist.Visible = true; | |||
|  |        } | |||
|  |         /// <summary> | |||
|  |         /// set data from shift object to page | |||
|  |         /// </summary> | |||
|  |         private void ProjectDetailDataBind() | |||
|  |         { | |||
|  |             ProjectMonthDetail.Visible = true; | |||
|  |         | |||
|  |             txtPdName.Text = _logic.GetProject.pj_name; | |||
|  |             txtPdStartDate.Text = _logic.GetProject.pj_planStartDate; | |||
|  |             txtPdEndDate.Text = _logic.GetProject.pj_planEndDate; | |||
|  |             txtPrjProgress.Text = _logic.GetProject.pj_progress.ToString(); | |||
|  |             txtPdActualEndDate.Text = _logic.GetProject.pj_finishDate; | |||
|  |             txtPdPlanTarget.Text = _logic.GetProjectDetail.pd_planTarget; | |||
|  |             txtPdFinishTarget.Text = _logic.GetProjectDetail.pd_finishedTarget; | |||
|  |             txtPdPercent.Text = _logic.GetProjectDetail.pd_percent.ToString(); | |||
|  |             txtPdMem.Text = _logic.GetProjectDetail.pd_mem; | |||
|  |             ApproveListBind(_logic.GetProjectDetail.ID); | |||
|  |             //bind the files | |||
|  | 
 | |||
|  |             GVFiles.DataSource = _logic.GetProjectDetail.GetFiles(); | |||
|  |             GVFiles.DataBind(); | |||
|  |             validControles(); | |||
|  |             MonthlyScore(); | |||
|  |         } | |||
|  |      void MonthlyScore() | |||
|  |      { | |||
|  | 
 | |||
|  |          divApproveScore.Visible = true; | |||
|  |          txtSystemScore.Text = (Convert.ToDouble(_logic.GetProject.pj_percent*_logic.GetProjectDetail.pd_percent)/100).ToString(); | |||
|  | 
 | |||
|  |      } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// set data from shift object to page | |||
|  |         /// </summary> | |||
|  |         private void ClearProjDetailData() | |||
|  |         { | |||
|  |             ProjectMonthDetail.Visible = false; | |||
|  |           | |||
|  |             txtPdName.Text = ""; | |||
|  |             txtPdStartDate.Text = ""; | |||
|  |             txtPdEndDate.Text = ""; | |||
|  |             txtPrjProgress.Text = ""; | |||
|  |             txtPdActualEndDate.Text = ""; | |||
|  |             txtPdPlanTarget.Text =""; | |||
|  |             txtPdFinishTarget.Text = ""; | |||
|  |             txtPdPercent.Text = ""; | |||
|  |             txtPdMem.Text =""; | |||
|  | 
 | |||
|  |             //bind the files | |||
|  | 
 | |||
|  |             GVFiles.DataSource = _logic.GetProjectDetail.GetFiles(); | |||
|  |             GVFiles.DataBind(); | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |          | |||
|  | 
 | |||
|  |         /************************************** protected methods (event listeners) ********************************/ | |||
|  | 
 | |||
|  |       | |||
|  |         protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e) | |||
|  |         { | |||
|  |         } | |||
|  | 
 | |||
|  |    | |||
|  |         | |||
|  |      | |||
|  |         protected void GridView1_PageIndexChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  |         } | |||
|  | 
 | |||
|  |         protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) | |||
|  |         { | |||
|  |             GridView1.PageIndex = e.NewPageIndex; | |||
|  |             Databound(); | |||
|  | 
 | |||
|  |             //GridView1.DataSource = shiftLgc.getAllShifts().Tables[0]; | |||
|  |             //     GridView1.DataBind();     | |||
|  |         } | |||
|  | 
 | |||
|  |         protected void GridView1_DataBinding(object sender, EventArgs e) | |||
|  |         { | |||
|  |         } | |||
|  | 
 | |||
|  |        | |||
|  | 
 | |||
|  |         protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) | |||
|  |         { | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         | |||
|  | 
 | |||
|  |         /***************************************** internal methods ********************************************/ | |||
|  |   | |||
|  | 
 | |||
|  |       | |||
|  |         private void ClearProjData()   | |||
|  |         { | |||
|  |             ProjectDetail.Visible = false; | |||
|  |           | |||
|  |             txtProjectName.Text = ""; | |||
|  |             SetDropDownlistSelection(drpdProjlisFromYear, DateTime.Now.Year.ToString()); | |||
|  |             SetDropDownlistSelection(drplstProjFromMonth, DateTime.Now.Month.ToString()); | |||
|  |             SetDropDownlistSelection(drplstProjectToYear, DateTime.Now.Year.ToString()); | |||
|  |             SetDropDownlistSelection(drlstProjToMonth, DateTime.Now.Month.ToString()); | |||
|  | 
 | |||
|  |             txtProjMaster.Text = ""; | |||
|  |             txtPrjDesc.Text =""; | |||
|  |             txtProjProgress.Text = "";  //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> | |||
|  |             txtProjPercent.Text = "";    //<2F><>ĿȨ<C4BF><C8A8> | |||
|  |             // SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); | |||
|  |             txtProjMem4delete.Visible =false; | |||
|  |             lbprjmem4Delete.Visible =false; | |||
|  |             txtProjMem4delete.Text = ""; | |||
|  |         | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |       | |||
|  |         protected void SetDropDownlistSelection(DropDownList drdlst,string value) | |||
|  |         { | |||
|  |             drdlst.Items[drdlst.SelectedIndex].Selected = false; | |||
|  |             if (drdlst.Items.FindByValue(value)!=null) | |||
|  |                 drdlst.Items.FindByValue(value).Selected = true; | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// edit project detail | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) | |||
|  |         { | |||
|  |             /* | |||
|  |         chgOperTxt(false); | |||
|  |         if (GridView1.DataKeys != null) | |||
|  |         { | |||
|  |             string id = GridView1.DataKeys[e.NewEditIndex].Value.ToString(); | |||
|  |             _logic.Initialize(int.Parse(id)); | |||
|  |         } | |||
|  |         Databound(); | |||
|  |         ProjectDetailDataBind(); | |||
|  |      | |||
|  |          */ | |||
|  |         } | |||
|  | 
 | |||
|  |  <20><> | |||
|  |         /// <summary> | |||
|  |         /// <20><>ʾ<EFBFBD><CABE>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void GridView1_EditProject(object sender, GridViewDeleteEventArgs e) | |||
|  |         { | |||
|  |          | |||
|  |             if (GridView1 != null) | |||
|  |             { | |||
|  |                 if (GridView1.DataKeys != null) | |||
|  |                 { | |||
|  |                     string id = GridView1.DataKeys[e.RowIndex].Value.ToString(); | |||
|  |                     _logic.Initialize(int.Parse(id)); | |||
|  |                 } | |||
|  |             } | |||
|  |             GridView1.SelectedIndex = e.RowIndex; | |||
|  |             Databound(); | |||
|  |             ProjectDataBind(); | |||
|  |             PanelApprove.Visible = true; | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD>ȱ༭/<2F>ƻ<EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  |        | |||
|  |             if (GridView1.DataKeys != null) | |||
|  |             { | |||
|  |                 string id = GridView1.DataKeys[GridView1.SelectedIndex].Value.ToString(); | |||
|  |                 _logic.Initialize(int.Parse(id)); | |||
|  |             } | |||
|  |             Databound(); | |||
|  |             ProjectDetailDataBind(); | |||
|  |             PanelApprove.Visible = true; | |||
|  |             divApproveProject.Visible = _logic.GetProject.pj_status == ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8> || | |||
|  |                                         _logic.GetProject.pj_status == ProjectStatus.<2E><>Ŀ<EFBFBD>ѷ<EFBFBD><D1B7><EFBFBD> || | |||
|  |                                         _logic.GetProject.pj_status == ProjectStatus.<2E><>Ŀδ<C4BF><CEB4><EFBFBD><EFBFBD> || | |||
|  |                                          _logic.GetProject.pj_status == ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> || | |||
|  |                                         _logic.GetProject.pj_status == ProjectStatus.<2E><>Ŀ<EFBFBD>ⶳ; | |||
|  |         } | |||
|  |         void  validControles() | |||
|  |         { | |||
|  |                     txtProjectName.ReadOnly = true; | |||
|  |                     drpdProjlisFromYear.Enabled = false ; | |||
|  |                     drplstProjFromMonth.Enabled = false; | |||
|  |                     drplstProjectToYear.Enabled = false; | |||
|  |                     drlstProjToMonth.Enabled = false; | |||
|  |                     drplstProjType.Enabled = false; | |||
|  |                     txtPrjDesc.ReadOnly = true; | |||
|  |                     txtProjProgress.ReadOnly = true; //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> | |||
|  |                     txtProjPercent.ReadOnly = true;   //<2F><>ĿȨ<C4BF><C8A8> | |||
|  |                     SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); | |||
|  |                     txtProjMem4delete.ReadOnly = true; //<2F><><EFBFBD><EFBFBD>δ<EFBFBD>ύ; | |||
|  |                     //  lbprjmem4Delete.Visible = false; | |||
|  |                     drplstProjDept.Enabled = false; | |||
|  | 
 | |||
|  |                     //--monthly detail. | |||
|  | 
 | |||
|  |                     txtPdName.ReadOnly = true; | |||
|  |                     txtPdStartDate.ReadOnly = true; | |||
|  |                     txtPdEndDate.ReadOnly = true; | |||
|  |                     txtPrjProgress.ReadOnly = true; | |||
|  |                     txtPdActualEndDate.ReadOnly = true; | |||
|  |                     txtPdPlanTarget.ReadOnly = true; | |||
|  |                     txtPdFinishTarget.ReadOnly = true; | |||
|  |                     txtPdPercent.ReadOnly = true; | |||
|  |                     txtPdMem.ReadOnly = true; | |||
|  |                     txtPdName.ReadOnly = true; | |||
|  |                     txtPdStartDate.ReadOnly = true; | |||
|  |                     txtPdEndDate.ReadOnly = true; | |||
|  |                     txtPrjProgress.ReadOnly = true; | |||
|  |                     txtPdActualEndDate.ReadOnly = true; | |||
|  |                     txtPdPlanTarget.ReadOnly = true; | |||
|  |                     txtPdFinishTarget.ReadOnly = true; | |||
|  |                     txtPdPercent.ReadOnly = true; | |||
|  |                     txtPdMem.ReadOnly = true; | |||
|  |                     //--<2D><><EFBFBD>˰<EFBFBD>ť | |||
|  |                     btnApprove.Visible = true; | |||
|  |                     btnReject.Visible = true; | |||
|  |                   | |||
|  |         } | |||
|  | 
 | |||
|  |        | |||
|  |         protected void rdblstMonth_SelectedIndexChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  |             GridView1.SelectedIndex = -1; | |||
|  |             Databound(); | |||
|  |         } | |||
|  |         protected void btnYear_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             rdblstMonth.SelectedItem.Selected = false; | |||
|  |             rdblstMonth.Items[0].Selected = true; | |||
|  |             Databound(); | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         void bindProjectNote() | |||
|  |         { | |||
|  |          | |||
|  |         } | |||
|  | 
 | |||
|  |         protected void btnApprove_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |         | |||
|  |             | |||
|  | 
 | |||
|  |         } | |||
|  |         protected void btnReject_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  | 
 | |||
|  |             if (ProjectDetail.Visible)  //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> | |||
|  |             { | |||
|  |                 //<2F>ж<EFBFBD><D0B6><EFBFBD>Ŀ<EFBFBD>Ƿ<EFBFBD><C7B7>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD>ڶ<EFBFBD><DAB6>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |                 if (_logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)) | |||
|  |                 { | |||
|  |                     if (authType.Equals("100")) //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |                     {  ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ   " + _logic.GetProject.pj_name +  | |||
|  |                           "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true); | |||
|  |                         return; | |||
|  |                     } | |||
|  | 
 | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (_logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)) | |||
|  |                 { | |||
|  |                     if (authType.Equals("100")) //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |                      | |||
|  |                     { ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ   " + _logic.GetProject.pj_name | |||
|  |                             + "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>');", true);return; | |||
|  |                     } | |||
|  |                     if (authType.Equals("200"))  //<2F><><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٳ<EFBFBD><D9B3>֣<EFBFBD><D6A3><EFBFBD>Ϊ<EFBFBD><CEAA>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ | |||
|  |                     if (!lem.CanKaoHe)  | |||
|  |                     { | |||
|  |                         ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ   " + _logic.GetProject.pj_name | |||
|  |                             + "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>п<EFBFBD><D0BF>˵<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>п<EFBFBD><D0BF>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>');", true); return; | |||
|  | 
 | |||
|  | 
 | |||
|  |                     } | |||
|  | 
 | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |                 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ״̬ | |||
|  |                 if (lem.CanKaoHe) | |||
|  |                 { | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  |                     | |||
|  |                 } | |||
|  | 
 | |||
|  |                 else if (lem.CanShenHe) | |||
|  |                 { | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  |                 } | |||
|  |                 else if (lem.CanYuShen) | |||
|  |                 { | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>δͨ<CEB4><CDA8>; | |||
|  |                     if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                         _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE>Ԥ<EFBFBD><D4A4>δͨ<CEB4><CDA8>; | |||
|  |                 } | |||
|  |                 _logic.PaObj.pa_id = _logic.GetProject.ID; | |||
|  |                 | |||
|  |                 | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>¶<EFBFBD><C2B6><EFBFBD>ϸ״̬ | |||
|  |                 if (lem.CanKaoHe) | |||
|  |                 { | |||
|  | 
 | |||
|  |                     _logic.GetProjectDetail.pd_status = ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  |                    | |||
|  |                 } | |||
|  | 
 | |||
|  |                 else if (lem.CanShenHe) | |||
|  |                 { | |||
|  | 
 | |||
|  |                     _logic.GetProjectDetail.pd_status = ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>; | |||
|  | 
 | |||
|  |                 } | |||
|  |                 else if (lem.CanYuShen) | |||
|  |                 { | |||
|  | 
 | |||
|  |                     _logic.GetProjectDetail.pd_status = ProjectDetailStatus.Ԥ<><D4A4>δͨ<CEB4><CDA8>; | |||
|  |                 } | |||
|  |                 _logic.PaObj.pa_id = _logic.GetProjectDetail.ID; | |||
|  |                | |||
|  |                 _logic.GetProject.pj_status = ProjectStatus.<2E><>Ŀδ<C4BF><CEB4><EFBFBD><EFBFBD>; | |||
|  |                      | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |             using (TransactionScope trans = new TransactionScope()) | |||
|  |             { | |||
|  |                 try | |||
|  |                 { | |||
|  |                     if (!ProjectDetail.Visible) | |||
|  |                         _logic.GetProjectDetail.Update(); | |||
|  |                     //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  | 
 | |||
|  |                     //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |                     _logic.GetProject.pj_nextDept = -1; | |||
|  |                     _logic.GetProject.Update(); | |||
|  |                     //<2F><>¼<EFBFBD><C2BC><EFBFBD>˶<EFBFBD><CBB6><EFBFBD> | |||
|  | 
 | |||
|  |                     _logic.PaObj.pa_dept = _logic.GetProject.pj_dept; | |||
|  |                     _logic.PaObj.pa_emp = lem.GetEmployee.ID; | |||
|  |                     _logic.PaObj.pa_isProj = !ProjectDetail.Visible; | |||
|  |                     _logic.PaObj.pa_mem = txtApproveMem.Text.Trim(); | |||
|  |                     _logic.PaObj.pa_pass = false; | |||
|  |                     _logic.PaObj.Add(); | |||
|  | 
 | |||
|  |                     trans.Complete(); | |||
|  |                 } | |||
|  |                 catch (MyException) | |||
|  |                 { | |||
|  |                     throw; | |||
|  |                 } | |||
|  |                 catch (Exception) | |||
|  |                 { | |||
|  |                     throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>"); | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  |            | |||
|  | 
 | |||
|  |             ApproveListBind(_logic.GetProject.ID); | |||
|  |             GridView1.SelectedIndex = -1; | |||
|  |             Databound();//<2F><><EFBFBD>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |             txtApproveMem.Text = ""; | |||
|  |           //  ApproveListBind(_logic.GetProject.ID); | |||
|  |           //  ProjectMonthDetail.Visible = false; | |||
|  |           //  ProjectDetail.Visible = false; | |||
|  |           //  PanelApprove.Visible = false; | |||
|  |         } | |||
|  |     protected void btnApprove_Click1(object sender, EventArgs e) | |||
|  |     { | |||
|  |         | |||
|  | 
 | |||
|  | 
 | |||
|  |         LDepartment dept = new LDepartment(  ); | |||
|  |         dept.Initialize(_logic.GetProject.pj_nextDept); | |||
|  |          | |||
|  |         if (ProjectDetail.Visible)  //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> | |||
|  |         { | |||
|  |               | |||
|  | 
 | |||
|  | 
 | |||
|  |             //<2F>ж<EFBFBD><D0B6><EFBFBD>Ŀ<EFBFBD>Ƿ<EFBFBD><C7B7>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD>ڶ<EFBFBD><DAB6>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |             if (_logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)|| _logic.GetProject.pj_status.Equals(ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)) | |||
|  |             { | |||
|  |                 ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ  " + _logic.GetProject.pj_name + "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true); | |||
|  | 
 | |||
|  |                 return; | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  |             if (_logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)|| _logic.GetProject.pj_status.Equals(ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)) | |||
|  |             { | |||
|  |                 if (authType.Equals("100")) //Ԥ<><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |                  | |||
|  |                 {ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ   " + _logic.GetProject.pj_name | |||
|  |                     + "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true); | |||
|  |                     return; | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (!lem.CanKaoHe) //<2F><><EFBFBD><EFBFBD> | |||
|  |                 { | |||
|  |                     ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof (UpdatePanel), "alert", | |||
|  |                                                         "alert('<27><>Ŀ  " + _logic.GetProject.pj_name | |||
|  |                                                         + "  <20>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>п<EFBFBD><D0BF>˵<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>п<EFBFBD><D0BF>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true); | |||
|  |                     return; | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  |     //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ״̬ | |||
|  |             if (lem.CanKaoHe &&  authType.Equals("200")  ) | |||
|  |             { | |||
|  |                if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  |                 if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  |                  _logic.GetProject.balanceThePercent(); | |||
|  |                 _logic.GetProject.pj_nextDept = -1; | |||
|  |             } | |||
|  | 
 | |||
|  |             else if (lem.CanShenHe) | |||
|  |             { | |||
|  |                 if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  |                 if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                      _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  |               /*  { | |||
|  |                     _logic.GetProject.pj_master = -1; | |||
|  |                     _logic.GetProject.pj_dept = -1; | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.<2E><>Ŀδ<C4BF><CEB4><EFBFBD><EFBFBD>; | |||
|  |                 } | |||
|  |                */  | |||
|  | 
 | |||
|  |                 _logic.GetProject.pj_nextDept = dept.GetDepartment.dep_mastdept;  | |||
|  |             } | |||
|  | 
 | |||
|  |             else if (lem.CanYuShen) | |||
|  |             { | |||
|  |                 if (_logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>")) | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.<2E><><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4>ͨ<EFBFBD><CDA8>; | |||
|  |                 if (_logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>")) | |||
|  |                     _logic.GetProject.pj_status = ProjectStatus.ɾ<><C9BE>Ԥ<EFBFBD><D4A4>ͨ<EFBFBD><CDA8>; | |||
|  | 
 | |||
|  |                 _logic.GetProject.pj_nextDept = dept.GetDepartment.dep_mastdept; | |||
|  |             } | |||
|  |             _logic.PaObj.pa_id = _logic.GetProject.ID; | |||
|  |             | |||
|  |         } | |||
|  |         else | |||
|  |         { | |||
|  |           | |||
|  | /* | |||
|  |             bool canNotApprove = _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>) || | |||
|  |                               _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>) ||  | |||
|  |                               _logic.GetProject.pj_status.StartsWith("ɾ<><C9BE>") ||  | |||
|  |                               _logic.GetProject.pj_status.StartsWith("<22><><EFBFBD><EFBFBD>") && | |||
|  |                               (! _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>) || | |||
|  |           | |||
|  | ! _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>)); | |||
|  |   */ | |||
|  |             bool canNotApprove = _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>) || | |||
|  |                                  _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><>Ŀδ<C4BF><CEB4><EFBFBD><EFBFBD>); | |||
|  |                                | |||
|  |                 | |||
|  |             if(canNotApprove ) | |||
|  |             { | |||
|  |                 ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ   " + _logic.GetProject.pj_name | |||
|  |                      + "   <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true); | |||
|  |                 return; | |||
|  |             } | |||
|  |     | |||
|  |               | |||
|  |          <20><> | |||
|  | 
 | |||
|  |             //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>ϸ״̬ | |||
|  |             if (lem.CanKaoHe) | |||
|  |             { | |||
|  |                 | |||
|  |                     _logic.GetProjectDetail.pd_status = ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  |                     _logic.GetProject.pj_nextDept = -1; | |||
|  |                  _logic.GetProject.pj_score = Convert.ToDecimal(txtSystemScore.Text);  //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF> | |||
|  |              //   _logic.GetProject.pj_finishDate = DateTime.Now.ToShortDateString(); | |||
|  |                  | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  |             else if (lem.CanShenHe) | |||
|  |             { | |||
|  |                 | |||
|  |                     _logic.GetProjectDetail.pd_status = ProjectDetailStatus.<2E><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>; | |||
|  | 
 | |||
|  |                     _logic.GetProject.pj_nextDept = dept.GetDepartment.dep_mastdept; | |||
|  |               | |||
|  |                 _logic.GetProject.pj_status = ProjectStatus.<2E><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>; | |||
|  |               //  _logic.GetProject.pj_score = Convert.ToDecimal(txtSystemScore.Text);  //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF> | |||
|  |                 _logic.GetProject.pj_finishDate = DateTime.Now.ToShortDateString(); | |||
|  |                 _logic.GetProject.pj_score = _logic.GetProjectDetail.pd_percent; | |||
|  | 
 | |||
|  |                 | |||
|  |             } | |||
|  |             else if (lem.CanYuShen) | |||
|  |             { | |||
|  | 
 | |||
|  |                 _logic.GetProjectDetail.pd_status = ProjectDetailStatus.Ԥ<><D4A4>ͨ<EFBFBD><CDA8>; | |||
|  |                 _logic.GetProject.pj_nextDept = dept.GetDepartment.dep_mastdept;  | |||
|  |             } | |||
|  | 
 | |||
|  |             _logic.PaObj.pa_id = _logic.GetProjectDetail.ID; | |||
|  |        //     _logic.PaObj.pa_score = txtApproveScore.Text.Length>0 ? Convert.ToInt32(txtApproveScore.Text) : Convert.ToInt32(txtSystemScore.Text); | |||
|  |             _logic.PaObj.pa_score=Convert.ToDecimal(txtSystemScore.Text); | |||
|  |              | |||
|  |         } | |||
|  | 
 | |||
|  |         using (TransactionScope trans = new TransactionScope()) | |||
|  |         { | |||
|  |             try | |||
|  |             { | |||
|  |                 if (!ProjectDetail.Visible) | |||
|  |                     _logic.GetProjectDetail.Update(); | |||
|  |                 //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  | 
 | |||
|  |                 _logic.GetProject.Update(); | |||
|  |                 //<2F><>¼<EFBFBD><C2BC><EFBFBD>˶<EFBFBD><CBB6><EFBFBD> | |||
|  |                 _logic.PaObj.pa_dept = _logic.GetProject.pj_dept; | |||
|  | 
 | |||
|  |                 _logic.PaObj.pa_emp = lem.GetEmployee.ID; | |||
|  | 
 | |||
|  |                 _logic.PaObj.pa_isProj = ProjectDetail.Visible; | |||
|  |                 _logic.PaObj.pa_mem = txtApproveMem.Text.Trim(); | |||
|  |                 _logic.PaObj.pa_pass = true; | |||
|  |                 _logic.PaObj.Add(); | |||
|  | 
 | |||
|  |                 trans.Complete(); | |||
|  |             } | |||
|  |             catch (MyException) | |||
|  |             { | |||
|  |                 throw; | |||
|  |             } | |||
|  |             catch (Exception) | |||
|  |             { | |||
|  |                 throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>"); | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  |        | |||
|  |         ApproveListBind(_logic.GetProject.ID); | |||
|  |         txtApproveMem.Text = ""; | |||
|  |         GridView1.SelectedIndex = -1; | |||
|  |         Databound();//<2F><><EFBFBD>°<EFBFBD><C2B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  | 
 | |||
|  |         //    ProjectMonthDetail.Visible = false; | |||
|  |          //   ProjectDetail.Visible = false; | |||
|  |         //    PanelApprove.Visible = false; | |||
|  |     } | |||
|  | 
 | |||
|  |     public string FormatShowContent(bool pass) | |||
|  |     { | |||
|  |         if (pass) | |||
|  |             return "ͨ<><CDA8>" + "<img src=../Images/tick.png border=0 border=0 title= <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>>"; | |||
|  |         return "δͨ<CEB4><CDA8>" + "<img src=../Images/cross.png border=0 border=0 title= <20><><EFBFBD><EFBFBD>δͨ<CEB4><CDA8>>"; ; | |||
|  |     } | |||
|  | 
 | |||
|  |     protected void TxtBtnYear_TextChanged(object sender, EventArgs e) | |||
|  |     { | |||
|  |      | |||
|  |         rdblstMonth.SelectedItem.Selected = false; | |||
|  |         rdblstMonth.Items[0].Selected = true; | |||
|  |         Databound(); | |||
|  | 
 | |||
|  |     } | |||
|  |     // <20>鿴<EFBFBD><E9BFB4><EFBFBD><EFBFBD> | |||
|  |     protected void GVFiles_SelectedIndexChanged(object sender, EventArgs e) | |||
|  |     { | |||
|  |         LFile fileObj = new LFile(); | |||
|  |         if (GVFiles.DataKeys != null) | |||
|  |         { | |||
|  |             string id = GVFiles.DataKeys[GVFiles.SelectedIndex].Value.ToString(); | |||
|  | 
 | |||
|  |             fileObj.Initialize(int.Parse(id)); | |||
|  |             string fileName = fileObj.GetFilesmgr.file_dest; | |||
|  |             fileName = Server.UrlEncode("../upload/" + fileObj.GetFilesmgr.File_type + "/" + fileObj.GetFilesmgr.file_dest); | |||
|  |             fileName = "../upload/" + fileObj.GetFilesmgr.File_type + "/" + fileObj.GetFilesmgr.file_dest; | |||
|  |             string openFile = "window.open('" + fileName + "');"; | |||
|  |             ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", openFile, true); | |||
|  |         } | |||
|  |     } | |||
|  | 
 | |||
|  | 
 | |||
|  |     protected void Page_Init() | |||
|  |     { | |||
|  | 
 | |||
|  |         PostBackTrigger trigger = new PostBackTrigger(); | |||
|  |         trigger.ControlID = Button1.UniqueID; | |||
|  |         ((UpdatePanel)Master.FindControl("UpdatePanel1")).Triggers.Add(trigger); | |||
|  | 
 | |||
|  |     } | |||
|  |     public override void VerifyRenderingInServerForm(Control control) | |||
|  |     { | |||
|  |     } | |||
|  | 
 | |||
|  |     protected void Excel_Click(object sender, EventArgs e) | |||
|  |     { | |||
|  |         Master.ScriptMgr.RegisterPostBackControl(Button1); | |||
|  |         GridView1.AllowPaging = false; | |||
|  |         GridView1.Columns[GridView1.Columns.Count-1].Visible = false; | |||
|  |         Databound(); | |||
|  |         Export("application/ms-excel", "<22><>Ŀ<EFBFBD>б<EFBFBD>.xls"); | |||
|  |         GridView1.AllowPaging = false; | |||
|  |         GridView1.Columns[GridView1.Columns.Count - 1].Visible = true; | |||
|  |         Databound(); | |||
|  | 
 | |||
|  |     } | |||
|  | 
 | |||
|  |     private void Export(string FileType, string FileName) | |||
|  |     { | |||
|  | 
 | |||
|  |         Response.Charset = "GB2312"; | |||
|  |         Response.ContentEncoding = Encoding.UTF7; | |||
|  |         Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString()); | |||
|  |         Response.ContentType = FileType; | |||
|  |         EnableViewState = false; | |||
|  |         StringWriter tw = new StringWriter(); | |||
|  |         HtmlTextWriter hw = new HtmlTextWriter(tw); | |||
|  |         GridView1.RenderControl(hw); | |||
|  |         Response.Write(tw.ToString()); | |||
|  |         Response.End(); | |||
|  | 
 | |||
|  |     } | |||
|  | } | |||
|  |   |