using System; using System.Data; using System.IO; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using view.App_Code; using DeiNiu.wms.Logical; using DeiNiu.Utils; public partial class ProjectMain : PageBase { private LProject _logic; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (lem == null) return ; _logic = new LProject(); initializeControles(); Databound(); } SessionSeting(); Validbtncontrols(rdblstMonth.SelectedValue=="0"); CurrentMonthSubmit(); } /***************************************** private methods ******************************************/ /// /// 只可以提交当前年月的项目 /// void CurrentMonthSubmit() { this.btnpdToApprove.Visible = Convert.ToInt32(this.btnYear.Text) == DateTime.Today.Year && rdblstMonth.Items.FindByValue(DateTime.Today.Month.ToString()).Selected; btnpd2approve.Visible = btnpdToApprove.Visible; } void Validbtncontrols(bool visible) { btn_addNew.Visible = visible; btnPrjToApprove.Visible = visible; btnDelete.Visible = visible; } /// /// bound the query list. /// private void Databound() { GridView1.DataSource = _logic.GetAllProjectDetail(lem.GetEmployee.ID,btnYear.Text, rdblstMonth.SelectedValue).DefaultView; GridView1.DataBind(); UpdateSession(); // ProjectDataBind(); // ProjectDetailDataBind(); // btnSubmit.Enabled = false; ClearProjDetailData(); ClearProjData(); } /// /// 通过判断当前用户的身份,确定返回不同的项目列表 /// /// void initializeControles() { btnYear.Text = DateTime.Today.Year.ToString(); // this.TxtBtnYear.Text = btnYear.Text; 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 = (LEmployee)Session[appScope.PagelevelObj]; _logic = (LProject)Session[appScope.PagelevelObj]; } } private void UpdateSession() { // Session[appScope.PagelevelObj] = _logic; Session[appScope.PagelevelObj] = _logic; } /// /// 绑定当前项目信息到页面的项目基本信息区 /// void ProjectDataBind() { ProjectDetail.Visible = true; btnSaveNewProj.Enabled = 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(); //项目进度 txtProjPercent.Text = _logic.GetProject.pj_percent.ToString(); //项目权重 SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); // txtProjMem4delete.Visible = (_logic.GetProject.pj_status == ProjectStatus.新增未提交) && rdblstMonth.Items[0].Selected; //只可删除自己新增的。 txtProjMem4delete.Visible = rdblstMonth.Items[0].Selected; // 可以删除任何项目状态 lbprjmem4Delete.Visible = txtProjMem4delete.Visible; btnDelete.Visible = txtProjMem4delete.Visible; txtProjMem4delete.Text = _logic.GetProject.pj_mem4del; txtProjMaster.Text = lem.GetEmployee.em_name; txtProjPercent.Text = _logic.GetProject.pj_percent.ToString() ; SetDropDownlistSelection(drplstProjDept, _logic.GetProject.pj_dept.ToString() ); ApproveListBind(_logic.GetProject.ID); // btnDelete.Visible = true; } void ApproveListBind(int id) { RepeaterApproveList.DataSource = _logic.PaObj.GetApproveListByTastkId(id); RepeaterApproveList.DataBind(); panelApprovelist.Visible = true; } /// /// 页面的项目基本信息区的信息回传给项目实例 /// /// void SetProjectDataBack() { //if (_logic.GetProject.ID > 0) //{ // _logic.GetProject.lastmodified = DateTime.Now.ToString(); //} // ProjectDetail.Visible = true; _logic.GetProject.pj_name = txtProjectName.Text; _logic.GetProject.pj_planStartDate = drpdProjlisFromYear.SelectedValue +"-" + drplstProjFromMonth.SelectedValue +"-01"; _logic.GetProject.pj_planEndDate = drplstProjectToYear.SelectedValue +"-" + drlstProjToMonth.SelectedValue +"-01"; _logic.GetProject.pj_master = lem.GetEmployee.ID; _logic.GetProject.pj_mem =txtPrjDesc.Text; // _logic.GetProject.pj_progress = Convert.ToInt32(txtProjProgress.Text) ; //项目进度 if (txtProjPercent.Text != string.Empty) _logic.GetProject.pj_percent = Convert.ToInt32(txtProjPercent.Text) ; //项目权重 _logic.GetProject.pj_type = drplstProjType.SelectedValue; _logic.GetProject.pj_status = _logic.GetProject.pj_status == String.Empty ? ProjectStatus.新增未提交 : _logic.GetProject.pj_status; _logic.GetProject.pj_mem4del = txtProjMem4delete.Text; _logic.GetProject.pj_dept = Convert.ToInt32(drplstProjDept.SelectedValue); if (_logic.GetProject.pj_nextDept == 0) _logic.GetProject.pj_nextDept = -1; else _logic.GetProject.pj_nextDept = _logic.GetProject.pj_nextDept; /* * _logic.GetProject.pj_nextDept = _logic.GetProject.pj_nextDept == 0 ? -1 ; _logic.GetProject.pj_nextDept; * _logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept; //如果项目负责人是本部门的主管,则提交上级部门 LDepartment dep = new LDepartment( _logic.GetProject.pj_dept); if (dep.GetDepartment.dep_manager == lem.GetEmployee.ID) { _logic.GetProject.pj_nextDept = dep.GetDepartment.dep_mastdept; if(dep.GetDepartment.dep_mastdept==0) //没有上级部门 { _logic.GetProject.pj_status = ProjectStatus.新增考核通过; } } * */ } /// /// set data from shift object to page /// private void ProjectDetailDataBind() { ProjectMonthDetail.Visible = true; btnSubmit.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; //bind the files GVFiles.DataSource = _logic.GetProjectDetail.GetFiles(); GVFiles.DataBind(); ApproveListBind(_logic.GetProjectDetail.ID); } /// /// set data from shift object to page /// private void ClearProjDetailData() { ProjectMonthDetail.Visible = false; btnSubmit.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(); panelApprovelist.Visible = false; } private void SetProjectDetailBack() { //if (_logic.GetProjectDetail.ID > 0) //{ // _logic.GetProjectDetail.lastmodified = DateTime.Now.ToString(); //} _logic.GetProject.pj_progress = Convert.ToInt32(txtPrjProgress.Text) ; _logic.GetProject.pj_finishDate =txtPdActualEndDate.Text ; _logic.GetProjectDetail.pd_planTarget =txtPdPlanTarget.Text ; _logic.GetProjectDetail.pd_finishedTarget = txtPdFinishTarget.Text ; _logic.GetProjectDetail.pd_percent =Convert.ToInt32(txtPdPercent.Text) ; _logic.GetProjectDetail.pd_mem =txtPdMem.Text ; //新增时status默认为”未提交‘ } /************************************** protected methods (event listeners) ********************************/ protected void btnAddnew_Click(object sender, EventArgs e) { chgOperTxt(true); _logic.Initialize(); ClearProjData(); ProjectDetail.Visible = true; btnSaveNewProj.Enabled = true; validProjControles(); ProjectMonthDetail.Visible = false; } protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e) { } /// /// 保存项目基本信息 /// /// /// protected void btnProjSubmit_Click(object sender, EventArgs e) { if(_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结)) return; if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) return; //检查项目状态有没有变化,变化则不允许保存。 if(_logic.GetProject.pj_status.Equals(ProjectStatus.新增已提交)||_logic.GetProject.pj_status.Equals(ProjectStatus.删减已提交)) { LProject lp = new LProject(); lp.GetProject.ID =_logic.GetProject.ID; lp.GetProject.getModel(); if(!lp.GetProject.pj_status.Equals(_logic.GetProject.pj_status)) { // Response.Write(""); ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('项目 " + _logic.GetProject.pj_name + "已经被审批,保存失败。');", true); ProjectDataBind(); return; } } SetProjectDataBack(); if (_logic.GetProject.pj_name == string.Empty || _logic.GetProject.pj_name.Trim().Length == 0) return; if (_logic.GetProject.pj_percent==0) return; if (_logic.GetProject.ID > 0) _logic.UpdateProject(); else _logic.AddProject(); ClearProjData(); Databound(); } 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_RowDataBound(object sender, GridViewRowEventArgs e) { /* CheckBox chk; if (e.Row.RowType == DataControlRowType.DataRow) { chk = new CheckBox(); chk.ID = e.Row.Cells[0].Text.Trim(); string pdstatus = e.Row.Cells[13].Text.Trim(); chk.Enabled = (pdstatus == ProjectDetailStatus.月度未提交 || pdstatus == ProjectDetailStatus.考核未通过 || pdstatus == ProjectDetailStatus.审核未通过 || pdstatus == ProjectDetailStatus.预审未通过); e.Row.Cells[1].Controls.Add(chk); } */ } protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { } //reset the page protected void btnReset_Click(object sender, EventArgs e) { _logic.Initialize(); Page_Load(this, e); } /// /// delete the project and details /// /// /// protected void btnDelete_Click(object sender, EventArgs e) { if(txtProjMem4delete.Text ==null ) return; if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结) || _logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) { ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('项目 " + _logic.GetProject.pj_name + " 项目已经完成,不可以删除。');", true); return; } if (_logic.GetProject.pj_status.Equals(ProjectStatus.新增考核通过)) { LDepartment dep = new LDepartment(_logic.GetProject.pj_dept); if ( (dep.GetDepartment.dep_manager != lem.GetEmployee.ID) &&(dep.GetDepartment.dep_mastdept != 0)) { return; } } if (!_logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) ) { _logic.GetProject.pj_mem4del = txtProjMem4delete.Text; _logic.GetProject.pj_status = DeiNiu.Utils.ProjectStatus.删减未提交; _logic.GetProject.Update(); } else if (_logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) || _logic.GetProject.pj_status.Equals(ProjectStatus.删减考核通过)) { _logic.Delete(); } ClearProjData(); Databound(); } /***************************************** internal methods ********************************************/ private void chgOperTxt(bool addNew) { btnSubmit.Enabled = true; } private void ClearProjData() { ProjectDetail.Visible = false; btnSaveNewProj.Enabled = 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 = ""; //项目进度 txtProjPercent.Text = ""; //项目权重 // SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); txtProjMem4delete.Visible =false; lbprjmem4Delete.Visible =false; txtProjMem4delete.Text = ""; panelApprovelist.Visible = false; } 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; } /// /// edit project detail /// /// /// 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(); */ }   /// /// 显示项目基本信息 /// /// /// 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(); // btnSaveNewProj.Enabled = _logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) || _logic.GetProject.pj_status.EndsWith("未通过"); // btnDelete.Enabled = _logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) || _logic.GetProject.pj_status.EndsWith("未通过"); validProjControles(); btnSubmit.Visible = false; } /// /// 进度编辑/计划 /// /// /// protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { chgOperTxt(false); if (GridView1.DataKeys != null) { string id = GridView1.DataKeys[GridView1.SelectedIndex].Value.ToString(); _logic.Initialize(int.Parse(id)); } Databound(); ProjectDetailDataBind(); validPdControles(); } void validProjControles() { bool canEditSubmit; canEditSubmit = _logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) || !_logic.GetProject.pj_status.EndsWith("已分配") && !_logic.GetProject.pj_status.EndsWith("审通过") && !_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成) &&!_logic.GetProject.pj_status.EndsWith("核通过")|| _logic.GetProject.pj_status.EndsWith("未通过") || _logic.GetProject.pj_status.Equals(string.Empty); txtProjectName.ReadOnly = !canEditSubmit; // drpdProjlisFromYear.Enabled = divEditProject.Visible; //drplstProjFromMonth.Enabled = divEditProject.Visible; // drplstProjectToYear.Enabled = divEditProject.Visible; // drlstProjToMonth.Enabled = divEditProject.Visible; drplstProjType.Enabled = canEditSubmit; txtPrjDesc.ReadOnly = !canEditSubmit; // txtProjProgress.ReadOnly = !divEditProject.Visible; //项目进度 txtProjPercent.ReadOnly = !canEditSubmit; //项目权重 SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type); // txtProjMem4delete.ReadOnly = !canEditSubmit; //新增未提交; // lbprjmem4Delete.Visible = divEditProject.Visible; drplstProjDept.Enabled = canEditSubmit; bool canNotDel = _logic.GetProject.pj_status.Equals(ProjectStatus.项目完成) || _logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结) || _logic.GetProject.pj_status == String.Empty || _logic.GetProject.pj_status.StartsWith("删减") || _logic.GetProject.pj_status.Equals(ProjectStatus.新增考核通过); bool canDel = !canNotDel; canDel = canDel && this.rdblstMonth.Items[0].Selected; txtProjMem4delete.Visible = canDel; lbprjmem4Delete.Visible = canDel; // if (btnDelete.Visible) btnDelete.Visible = canDel; } void validPdControles() { //--monthly detail. projMonthDetailEdit.Visible = _logic.GetProjectDetail.pd_status.Equals(ProjectDetailStatus.月度未提交) || !_logic.GetProjectDetail.pd_status.EndsWith("核通过") && !_logic.GetProjectDetail.pd_status.EndsWith("审通过") || _logic.GetProjectDetail.pd_status.Equals(string.Empty); projMonthDetailEdit.Visible = projMonthDetailEdit.Visible && !(_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结) || _logic.GetProject.pj_status.Equals(ProjectStatus.项目完成) || _logic.GetProject.pj_status.StartsWith("删减") && (!_logic.GetProject.pj_status.Equals(ProjectStatus.删减未提交) && !_logic.GetProject.pj_status.EndsWith("未通过")) || _logic.GetProject.pj_status.StartsWith("新增") && (!_logic.GetProject.pj_status.Equals(ProjectStatus.新增考核通过)) || _logic.GetProjectDetail.pd_status.EndsWith("未提交") || _logic.GetProjectDetail.pd_status.EndsWith("未通过") || _logic.GetProject.pj_status.StartsWith("删减")); projMonthDetailEdit.Visible = projMonthDetailEdit.Visible || _logic.GetProject.pj_status.Equals(ProjectStatus.项目已分配); txtPdName.ReadOnly = !projMonthDetailEdit.Visible; // txtPdStartDate.ReadOnly = ! projMonthDetailEdit.Visible ; // txtPdEndDate.ReadOnly = ! projMonthDetailEdit.Visible ; // txtPrjProgress.ReadOnly = ! projMonthDetailEdit.Visible ; // txtPdActualEndDate.ReadOnly = ! projMonthDetailEdit.Visible ; txtPdPlanTarget.ReadOnly = ! projMonthDetailEdit.Visible ; txtPdFinishTarget.ReadOnly = ! projMonthDetailEdit.Visible ; txtPdPercent.ReadOnly = ! projMonthDetailEdit.Visible ; txtPdMem.ReadOnly = ! projMonthDetailEdit.Visible ; //--审核按钮 } /// /// project detail /// /// /// protected void btnSubmit_Click(object sender, EventArgs e) { if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结)) return; if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) return; SetProjectDetailBack(); _logic.GetProjectDetail.Update(); ClearProjDetailData(); Databound(); } 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 btnToApprove_Click(object sender, EventArgs e) { // _logic.GetProject.ID = Convert.ToInt32(GridView1.Rows[1].Cells[0].Text.Trim()); foreach (GridViewRow row in this.GridView1.Rows) { HtmlInputCheckBox checkNews = (HtmlInputCheckBox)row.FindControl("checkNews"); if (!checkNews.Checked) continue; _logic.Initialize(Convert.ToInt32(GridView1.DataKeys[row.RowIndex].Value.ToString())); if( _logic.GetProject.pj_status.EndsWith("未提交")|| _logic.GetProject.pj_status.EndsWith("未通过") ) { _logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept; //如果项目负责人是本部门的主管,则提交上级部门 LDepartment dep = new LDepartment(_logic.GetProject.pj_dept); if (dep.GetDepartment.dep_manager == lem.GetEmployee.ID) { _logic.GetProject.pj_nextDept = dep.GetDepartment.dep_mastdept; if (dep.GetDepartment.dep_mastdept == 0) //没有上级部门 { _logic.GetProject.pj_status = ProjectStatus.新增考核通过; _logic.GetProject.Update(); continue; //超级领导自我审批 } } //正常情况下提交本部门领导批准 _logic.GetProject.pj_status = ProjectStatus.新增已提交; _logic.GetProject.Update(); } } Databound(); } public string FormatShowContent(bool pass) { if (pass) return "通过" + ""; return "未通过" + ""; } /// /// 月度提交 /// /// /// protected void btnpdToApprove_Click(object sender, EventArgs e) { foreach (GridViewRow row in this.GridView1.Rows) { HtmlInputCheckBox checkNews = (HtmlInputCheckBox)row.FindControl("checkNews"); if (!checkNews.Checked) continue; _logic.Initialize(Convert.ToInt32(GridView1.DataKeys[row.RowIndex].Value.ToString())); if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结)) continue; //冻结的项目不可以提交。 if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) continue; if (_logic.GetProject.pj_status.Equals(ProjectStatus.新增预审通过)) continue; if (_logic.GetProject.pj_status.StartsWith("删减") && (!_logic.GetProject.pj_status.Equals(ProjectStatus.删减未提交) && !_logic.GetProject.pj_status.EndsWith("未通过"))) continue; if (_logic.GetProject.pj_status.StartsWith("新增") && (!_logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交) && !_logic.GetProject.pj_status.EndsWith("未通过"))) continue; if (_logic.GetProjectDetail.pd_status.EndsWith("未提交") || _logic.GetProjectDetail.pd_status.EndsWith("未通过") || _logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept; //如果项目负责人是本部门的主管,则提交上级部门 LDepartment dep = new LDepartment(_logic.GetProject.pj_dept); if (dep.GetDepartment.dep_manager == lem.GetEmployee.ID) { _logic.GetProject.pj_nextDept = dep.GetDepartment.dep_mastdept; if (_logic.GetProject.pj_status.EndsWith("未提交") || _logic.GetProject.pj_status.EndsWith("未通过")) { if (_logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_status = ProjectStatus.删减预审通过; } if (_logic.GetProject.pj_status.StartsWith("新增")) { _logic.GetProject.pj_status = ProjectStatus.新增预审通过; } _logic.GetProject.Update(); } else { _logic.GetProjectDetail.pd_status = ProjectDetailStatus.预审通过; _logic.GetProjectDetail.Update(); _logic.GetProject.Update(); } if (dep.GetDepartment.dep_mastdept == 0) //没有上级部门 { if (_logic.GetProject.pj_status.Equals(ProjectStatus.删减未提交)) _logic.GetProject.pj_status = ProjectStatus.删减审核通过; else if (_logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交)) _logic.GetProject.pj_status = ProjectStatus.新增审核通过; else _logic.GetProjectDetail.pd_status = ProjectDetailStatus.审核通过; _logic.GetProject.Update(); _logic.GetProjectDetail.Update(); continue; //超级领导自我审批 } continue; } //正常情况下提交本部门领导批准 if (_logic.GetProject.pj_status.EndsWith("未提交")||_logic.GetProject.pj_status.EndsWith("未通过")) { if(_logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_status = ProjectStatus.删减已提交; } if (_logic.GetProject.pj_status.StartsWith("新增")) { _logic.GetProject.pj_status = ProjectStatus.新增已提交; } } else { _logic.GetProjectDetail.pd_status = ProjectDetailStatus.月度已提交; _logic.GetProjectDetail.Update(); } _logic.GetProject.Update(); } } Databound(); } protected void btnpd2approve_Click(object sender, EventArgs e) { btnSubmit_Click( sender, e); if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结)) return; if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) return; if (_logic.GetProject.pj_status.StartsWith("删减") && (!_logic.GetProject.pj_status.Equals(ProjectStatus.删减未提交) && !_logic.GetProject.pj_status.EndsWith("未通过"))) return; if (_logic.GetProject.pj_status.StartsWith("新增") && ( !_logic.GetProject.pj_status.Equals(ProjectStatus.新增考核通过))) return; if (_logic.GetProjectDetail.pd_status.EndsWith("未提交") || _logic.GetProjectDetail.pd_status.EndsWith("未通过") || _logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept; //如果项目负责人是本部门的主管,则提交上级部门 LDepartment dep = new LDepartment(_logic.GetProject.pj_dept); if (dep.GetDepartment.dep_manager == lem.GetEmployee.ID) { _logic.GetProject.pj_nextDept = dep.GetDepartment.dep_mastdept; if (_logic.GetProject.pj_status.EndsWith("未提交") || _logic.GetProject.pj_status.EndsWith("未通过")) { if (_logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_status = ProjectStatus.删减预审通过; } if (_logic.GetProject.pj_status.StartsWith("新增")) { _logic.GetProject.pj_status = ProjectStatus.新增预审通过; } _logic.GetProject.Update(); } else { _logic.GetProjectDetail.pd_status = ProjectDetailStatus.预审通过; _logic.GetProjectDetail.Update(); _logic.GetProject.Update(); } if (dep.GetDepartment.dep_mastdept == 0) //没有上级部门 { if (_logic.GetProject.pj_status.Equals(ProjectStatus.删减未提交)) _logic.GetProject.pj_status = ProjectStatus.删减审核通过; else if (_logic.GetProject.pj_status.Equals(ProjectStatus.新增未提交)) _logic.GetProject.pj_status = ProjectStatus.新增审核通过; else _logic.GetProjectDetail.pd_status = ProjectDetailStatus.审核通过; _logic.GetProject.Update(); _logic.GetProjectDetail.Update(); //超级领导自我审批 } Databound(); return; } //正常情况下提交本部门领导批准 if (_logic.GetProject.pj_status.EndsWith("未提交") || _logic.GetProject.pj_status.EndsWith("未通过")) { if (_logic.GetProject.pj_status.StartsWith("删减")) { _logic.GetProject.pj_status = ProjectStatus.删减已提交; } if (_logic.GetProject.pj_status.StartsWith("新增")) { _logic.GetProject.pj_status = ProjectStatus.新增已提交; } } else { _logic.GetProjectDetail.pd_status = ProjectDetailStatus.月度已提交; _logic.GetProjectDetail.Update(); } _logic.GetProject.Update(); } Databound(); } protected void btnpj2approve_Click(object sender, EventArgs e) { if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目冻结)) return; //冻结的项目不可以提交。 if (_logic.GetProject.pj_status.Equals(ProjectStatus.项目完成)) return; if (_logic.GetProjectDetail.pd_status.EndsWith("未提交") || _logic.GetProjectDetail.pd_status.EndsWith("未通过")) { _logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept; //如果项目负责人是本部门的主管,则提交上级部门 LDepartment dep = new LDepartment(_logic.GetProject.pj_dept); if (dep.GetDepartment.dep_manager == lem.GetEmployee.ID) { _logic.GetProject.pj_nextDept = dep.GetDepartment.dep_mastdept; if (dep.GetDepartment.dep_mastdept == 0) //没有上级部门 { _logic.GetProjectDetail.pd_status = ProjectDetailStatus.审核通过; _logic.GetProject.Update(); _logic.GetProjectDetail.Update(); //超级领导自我审批 } } //正常情况下提交本部门领导批准 _logic.GetProject.Update(); _logic.GetProjectDetail.pd_status = ProjectDetailStatus.月度已提交; _logic.GetProjectDetail.Update(); } Databound(); } protected void btnFileUpload_Click(object sender, EventArgs e) {   Session["uploadCode"] = new Random().Next(); string fileCode = Session["uploadCode"].ToString(); string fileType = ((int)FileType.ProjectDetail).ToString(); string fileInfo = _logic.GetProjectDetail.ID.ToString(); string fileUPload = " window.showModalDialog('../upload/fileUpload.aspx?'+Math.random() +'=" + fileCode + "&fileType=" + fileType + "&fileInfo=" + fileInfo + "&id=" + lem.GetEmployee.ID + "' )"; ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", fileUPload, true);         } protected void btnFileUploadReferesh_Click1(object sender, EventArgs e) { GVFiles.DataSource = _logic.GetProjectDetail.GetFiles(); GVFiles.DataBind(); } protected void GVFiles_RowDeleting(object sender, GridViewDeleteEventArgs e) { LFile fileObj = new LFile(); if (GVFiles != null) { if (GVFiles.DataKeys != null) { string id = GVFiles.DataKeys[e.RowIndex].Value.ToString(); fileObj.Initialize(int.Parse(id)); fileObj.GetFilesmgr.Delete(); GVFiles.DataSource = _logic.GetProjectDetail.GetFiles(); GVFiles.DataBind(); } } /* _logic.GetRole.dr = false; _logic.GetRole.Update(); */ } // 查看附件 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 TxtBtnYear_TextChanged(object sender, EventArgs e) { // btnYear.Text = TxtBtnYear.Text; rdblstMonth.SelectedItem.Selected = false; rdblstMonth.Items[0].Selected = true; Databound(); } protected void btnpj2approve_Click1(object sender, EventArgs e) { } 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[1].Visible = false; GridView1.Columns[GridView1.Columns.Count -1].Visible = false; Databound(); Export("application/ms-excel", "项目列表.xls"); GridView1.AllowPaging = true; GridView1.Columns[1].Visible = true; 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(); }   }