platform/Project/ProjectCenter.aspx.cs

1017 lines
36 KiB
C#
Raw Permalink Normal View History

2024-02-18 23:33:54 +08:00
using System;
using System.Collections;
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 DeiNiu.wms.Logical;
using DeiNiu.Utils;
public partial class ProjectCenter : PageBase
{
private LProject _logic;
protected void Page_Load(object sender, EventArgs e)
{
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 = getProjects();
GridView1.DataBind();
UpdateSession();
// ProjectDataBind();
// ProjectDetailDataBind();
// btnSubmit.Enabled = false;
ClearProjDetailData();
ClearProjData();
intializeProjectMasterDept();
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>Ϣ
/// </summary>
/// <returns></returns>
DataView getProjects()
{
if (TreeDeptEmp.Nodes.Count == 0) return new DataView();
DataView dv = _logic.GetProjectsByYearMonth( btnYear.Text, rdblstMonth.SelectedValue).DefaultView;
string selectDept = string.Empty;
string selectEmp = string.Empty;
string inputProjectName = string.Empty;
string rowFilter = string.Empty;
if(rdlstAssignQry.SelectedValue=="0") //all assigned and unassigned
{
//<2F>趨Ա<E8B6A8><D4B1><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if( TreeDeptEmp.SelectedNode != null)
if(TreeDeptEmp.SelectedNode.Text.StartsWith(".")) //employee
{
rowFilter = "pj_master = " + TreeDeptEmp.SelectedValue;
}
else
{
rowFilter = "pj_dept =" + TreeDeptEmp.SelectedValue;
}
}
else
{
if (rdlstAssignQry.SelectedValue == "1") //assigned
rowFilter = "pj_status ='" + ProjectStatus.<EFBFBD><EFBFBD>Ŀ<EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD> +"'";
else
rowFilter = "pj_status ='" + ProjectStatus.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> +"'";
}
//<2F><EFBFBD><E8B6A8>Ŀ<EFBFBD><C4BF><EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>
if(txtQryProjectName.Text.Trim().Length>0)
{
if(rowFilter.Length>0)
{
rowFilter += " and ";
}
rowFilter += " pj_name like '%" + txtQryProjectName.Text.Trim() + "%'";
}
dv.RowFilter = rowFilter;
return dv;
}
/// <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>
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());
intializeProjectMasterDept();
bindDeptEmp();
validDeptEmp();
}
void validDeptEmp()
{
if(lem.CanManageProjects) return;
}
void intializeProjectMasterDept()
{
txtProjMaster.Text = "";
drplstProjDept.Items.Clear();
if (TreeDeptEmp.SelectedValue == "0") return;
if (TreeDeptEmp.SelectedNode != null)
if (TreeDeptEmp.SelectedNode.Text.StartsWith(".")) //employee
{
LEmployee tmp = new LEmployee();
tmp.Initialize(Convert.ToInt32(TreeDeptEmp.SelectedValue));
drplstProjDept.DataSource = tmp.GetEmployee.GetDepartments();
drplstProjDept.DataTextField = "DEP_NAME";
drplstProjDept.DataValueField = "ID";
drplstProjDept.DataBind();
txtProjMaster.Text = TreeDeptEmp.SelectedNode.Text.Substring(1).Replace("<strong>","").Replace("</strong>",string.Empty);
}
else
{
string dept = TreeDeptEmp.SelectedNode.Text.Substring(4);
dept = dept.Substring(0, dept.Length -5);
drplstProjDept.Items.Add(new ListItem(dept,TreeDeptEmp.SelectedNode.Value));
}
}
/// <summary>
/// <20>󶨲<EFBFBD><F3B6A8B2>ż<EFBFBD><C5BC>û<EFBFBD>
/// </summary>
private void bindDeptEmp()
{
TreeDeptEmp.Nodes.Clear();
if (lem.CanManageProjects) //ӵ<>й<EFBFBD><D0B9><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>Ľ<EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
BindEmpTree(TreeDeptEmp, "0", TreeDeptEmp.SelectedNode, lem.GetDepartments().DefaultView, lem.GetActivedEmpDept().DefaultView);
else
BindEmpTree(TreeDeptEmp, Util.buildWhereIntIn(lem.GetCanApproveDeptList()), TreeDeptEmp.SelectedNode, lem.GetDepartments().DefaultView, lem.GetActivedEmpDept().DefaultView);
if (TreeDeptEmp.Nodes.Count >0) TreeDeptEmp.Nodes[0].Selected = true;
}
public void BindEmpTree(TreeView tree, string id, TreeNode pNode, DataView deptdv, DataView empdv)
{
if (lem.CanManageProjects)
{
deptdv.RowFilter = "dep_mastdept in (" + id + ")";
}
else
{
if (id == string.Empty) return;
deptdv.RowFilter = "dep_mastdept in (" + id + ")";
if (pNode == null)
deptdv.RowFilter = "ID in (" + id + ")";
}
foreach (DataRowView row in deptdv)
{
TreeNode node = new TreeNode();
node.Text = "<em>" + row["dep_name"] + "</em>";
node.Value = row["ID"].ToString();
node.ShowCheckBox = false;
node.Expanded = false;
empdv.RowFilter = "de_dept=" + node.Value;
foreach (DataRowView emrow in empdv)
{
TreeNode tnEmp = new TreeNode(".<strong>" + emrow["em_name"].ToString() +"</strong>" , emrow["ID"].ToString());
node.ChildNodes.Add(tnEmp);
}
if (pNode == null)
//˵<><CBB5><EFBFBD>Ǹ<EFBFBD><C7B8>ڵ<EFBFBD>
{
tree.Nodes.Add(node);
}
else
{
pNode.ChildNodes.Add(node);
}
BindEmpTree(tree, node.Value, node, new DataView(deptdv.Table), new DataView(empdv.Table));
}
}
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;
}
/// <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;
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(); //<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.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>;
lbprjmem4Delete.Visible = _logic.GetProject.pj_status == DeiNiu.Utils.ProjectStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>;
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);
}
void ApproveListBind(int id)
{
RepeaterApproveList.DataSource = _logic.PaObj.GetApproveListByTastkId(id);
RepeaterApproveList.DataBind();
panelApprovelist.Visible = true;
}
/// <summary>
/// ҳ<><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>Ŀʵ<C4BF><CAB5>
///
/// </summary>
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) ; //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
_logic.GetProject.pj_percent = Convert.ToInt32(txtProjPercent.Text) ; //<2F><>ĿȨ<C4BF><C8A8>
_logic.GetProject.pj_type = drplstProjType.SelectedValue;
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD>;
_logic.GetProject.pj_mem4del = txtProjMem4delete.Text;
_logic.GetProject.pj_dept = Convert.ToInt32(drplstProjDept.SelectedValue);
_logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
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) //û<><C3BB><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>;
}
}
_logic.GetProject.pj_percent = Convert.ToInt32(txtProjPercent.Text);
lbuploadmessage.Text = "";
}
/// <summary>
/// set data from shift object to page
/// </summary>
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);
}
/// <summary>
/// set data from shift object to page
/// </summary>
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 ;
//<2F><><EFBFBD><EFBFBD>ʱstatusĬ<73><C4AC>Ϊ<EFBFBD><CEAA>δ<EFBFBD><EFBFBD><E1BDBB>
lbuploadmessage.Text = "";
}
/************************************** protected methods (event listeners) ********************************/
protected void btnAddnew_Click(object sender, EventArgs e)
{
chgOperTxt(true);
_logic.Initialize();
ClearProjData();
ProjectDetail.Visible = true;
btnSaveNewProj.Enabled = true;
validProjControles();
intializeProjectMasterDept();
lbuploadmessage.Text = "";
}
protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e)
{
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnProjSubmit_Click(object sender, EventArgs e)
{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ״̬<D7B4><CCAC>û<EFBFBD>б<D0B1><E4BBAF><EFBFBD><EFBFBD><E4BBAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(!_logic.GetProject.pj_status.Equals(ProjectStatus.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) )
{ ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>Ŀ " + _logic.GetProject.pj_name + "<22>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸ģ<DEB8><C4A3><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true);
return;
}
LProject lp = new LProject();
lp.GetProject.ID =_logic.GetProject.ID;
lp.GetProject.getModel();
if(!lp.GetProject.pj_status.Equals(_logic.GetProject.pj_status))
{
ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ " + _logic.GetProject.pj_name + "<22>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸ģ<DEB8><C4A3><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>');", true);
_logic.Initialize(_logic.GetProject.ID);
Databound();
ProjectDataBind();
return;
}
SetProjectDataBack();
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.<EFBFBD><EFBFBD>δ<EFBFBD> || pdstatus == ProjectDetailStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<EFBFBD><EFBFBD> ||
pdstatus == ProjectDetailStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>δͨ<EFBFBD><EFBFBD> || pdstatus == ProjectDetailStatus.Ԥ<EFBFBD><EFBFBD>δͨ<EFBFBD><EFBFBD>);
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);
}
/// <summary>
/// delete the project and details
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDelete_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.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>))
{
_logic.GetProject.Delete();
}
}
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 = ""; //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
txtProjPercent.Text = ""; //<2F><>ĿȨ<C4BF><C8A8>
// SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type);
txtProjMem4delete.Visible =false;
lbprjmem4Delete.Visible =false;
txtProjMem4delete.Text = "";
panelApprovelist.Visible = false;
drplstProjDept.Items.Clear();
lbuploadmessage.Text = "";
}
protected void SetDropDownlistSelection(DropDownList drdlst,string value)
{
if(drdlst.SelectedIndex>=0)
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();
*/
}
<EFBFBD><EFBFBD>
/// <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();
// btnSaveNewProj.Enabled = _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD>δ<EFBFBD>ύ) || _logic.GetProject.pj_status.EndsWith("δͨ<CEB4><CDA8>");
// btnDelete.Enabled = _logic.GetProject.pj_status.Equals(ProjectStatus.<2E><><EFBFBD><EFBFBD>δ<EFBFBD>ύ) || _logic.GetProject.pj_status.EndsWith("δͨ<CEB4><CDA8>");
validProjControles();
btnSubmit.Visible = false;
}
/// <summary>
/// <20><><EFBFBD>ȱ༭/<2F>ƻ<EFBFBD>
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
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()
{
divEditProject.Visible = _logic.GetProject.pj_status.Equals(ProjectStatus.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) ;
txtProjectName.ReadOnly =!divEditProject.Visible;
drpdProjlisFromYear.Enabled = divEditProject.Visible;
drplstProjFromMonth.Enabled = divEditProject.Visible;
drplstProjectToYear.Enabled = divEditProject.Visible;
drlstProjToMonth.Enabled = divEditProject.Visible;
drplstProjType.Enabled = divEditProject.Visible;
txtPrjDesc.ReadOnly =!divEditProject.Visible;
txtProjProgress.ReadOnly =!divEditProject.Visible; //<2F><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
txtProjPercent.ReadOnly =!divEditProject.Visible; //<2F><>ĿȨ<C4BF><C8A8>
SetDropDownlistSelection(drplstProjType, _logic.GetProject.pj_type);
txtProjMem4delete.ReadOnly =!divEditProject.Visible; //<2F><><EFBFBD><EFBFBD>δ<EFBFBD>ύ;
// lbprjmem4Delete.Visible = divEditProject.Visible;
drplstProjDept.Enabled = divEditProject.Visible;
txtProjMaster.ReadOnly =!divEditProject.Visible;
}
void validPdControles()
{
//--monthly detail.
projMonthDetailEdit.Visible = false;
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 ;
}
/// <summary>
/// project detail
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSubmit_Click(object sender, EventArgs e)
{
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();
}
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("δͨ<CEB4><CDA8>") )
{
_logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
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) //û<><C3BB><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>;
_logic.GetProject.Update();
continue; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1BDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB5BC>׼
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
_logic.GetProject.Update();
}
}
Databound();
}
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 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.GetProjectDetail.pd_status.EndsWith(<>ύ") || _logic.GetProjectDetail.pd_status.EndsWith("δͨ<CEB4><CDA8>"))
{
_logic.GetProject.pj_nextDept = _logic.GetProject.pj_dept;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD><C7B1><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
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) //û<><C3BB><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD><EFBFBD><EFBFBD>
{
_logic.GetProjectDetail.pd_status = ProjectDetailStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>;
_logic.GetProject.Update();
_logic.GetProjectDetail.Update();
continue; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1BDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB5BC>׼
_logic.GetProject.Update();
_logic.GetProjectDetail.pd_status = ProjectDetailStatus.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
_logic.GetProjectDetail.Update();
}
}
Databound();
}
protected void btnpd2approve_Click(object sender, EventArgs e)
{
}
protected void TreeDeptEmp_SelectedNodeChanged(object sender, EventArgs e)
{
GridView1.SelectedIndex = -1;
intializeProjectMasterDept();
Databound();
}
protected void btnQuery_Click(object sender, EventArgs e)
{
Databound();
}
protected void btnAssign_Click(object sender, EventArgs e)
{
if (TreeDeptEmp.SelectedNode == null || TreeDeptEmp.SelectedNode != null && TreeDeptEmp.SelectedValue == "0" || TreeDeptEmp.SelectedNode.Parent.Value=="0")
{
ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˡ<EFBFBD>');", true);
return;
}
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.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) )
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD>Ŀ<EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>;
_logic.GetProject.pj_master = Convert.ToInt32(TreeDeptEmp.SelectedValue);
_logic.GetProject.pj_dept = Convert.ToInt32(TreeDeptEmp.SelectedNode.Parent.Value);
_logic.GetProject.Update();
}
}
Databound();
}
protected void btnUnAssign_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.<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>))
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
_logic.GetProject.Update();
}
}
Databound();
}
protected void btnFileUpload1_Click(object sender, EventArgs e)
{
const string projectDest = "~/upload/projects/";
if (fileUpload1.FileName.Length==0) return;
lbuploadmessage.Text = "";
DirectoryInfo dir = new DirectoryInfo(Server.MapPath(projectDest));
if (!dir.Exists)
dir.Create();
string fileSavePath = Server.MapPath(projectDest + fileUpload1.FileName);
fileUpload1.SaveAs(fileSavePath);
// Master.ScriptMgr.EnablePartialRendering = true;
// pdUpload.Visible = false;
importProjects(fileSavePath);
lbuploadmessage.Text = "<22>ϴ<EFBFBD><CFB4>ɹ<EFBFBD><C9B9><EFBFBD>";
Databound();
System.IO.File.Delete(fileSavePath);
}
void importProjects(string fileName)
{
int Count = 1;
string tableName = string.Empty;
try
{
DataSet ds = Util.Excel2DataSet(fileName);
foreach (DataTable dt in ds.Tables)
{
Count = 1;
tableName = dt.TableName;
foreach (DataRow dr in dt.Rows)
{
Count++;
_logic.Initialize();
if (dr["<22><><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>"].ToString().Length>0)
_logic.GetProject.pj_dept = Convert.ToInt32(dr["<22><><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD>"].ToString());
if (dr["<22><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>"].ToString().Length > 0)
_logic.GetProject.pj_master = Convert.ToInt32(dr["<22><>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>"].ToString());
_logic.GetProject.pj_mem = dr["<22><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>"].ToString().Substring(0,500);
_logic.GetProject.pj_name = dr["<22><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>"].ToString().Substring(0,50);
if (dr["<22><>ĿȨ<C4BF><C8A8>"].ToString().Length > 0)
_logic.GetProject.pj_percent = Convert.ToInt32(dr["<22><>ĿȨ<C4BF><C8A8>"].ToString());
_logic.GetProject.pj_type = dr["<22><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>"].ToString();
_logic.GetProject.pj_nextDept =-1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (_logic.GetProject.pj_master >0) _logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD>Ŀ<EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>;
else
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD>Ŀδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
}
_logic.GetProject.pj_planStartDate = dr["<22><>Ŀ<EFBFBD><C4BF>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>"].ToString().Trim() + "-" + dr["<22><>Ŀ<EFBFBD><C4BF>ʼ<EFBFBD>·<EFBFBD>"].ToString().Trim() + "-01";
_logic.GetProject.pj_planEndDate = _logic.GetProject.pj_planStartDate;
Convert.ToDateTime(_logic.GetProject.pj_planStartDate).AddMonths(Convert.ToInt32(dr["<22><>ĿȨ<C4BF><C8A8>"].ToString()));
_logic.AddProject();
}
}
}
catch (Exception )
{
string errorMsg = "<22><><EFBFBD><EFBFBD> " + tableName +"<22><> "+ Count +" <20><><EFBFBD>д<EFBFBD><D0B4>󣬼<EFBFBD><F3A3ACBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD>";
lbuploadmessage.Text = lbuploadmessage.Text + errorMsg;
throw;
// ScriptManager.RegisterStartupScript(Master.UpdatePanelMaster, typeof(UpdatePanel), "alert", "alert('"+ errorMsg+"');", true);
}
}
protected void btnActive_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.<EFBFBD><EFBFBD>Ŀ<EFBFBD>))
{
_logic.GetProject.pj_status = ProjectStatus.<EFBFBD><EFBFBD>Ŀ<EFBFBD>;
_logic.GetProject.Update();
}
}
Databound();
}
protected void TxtBtnYear_TextChanged(object sender, EventArgs e)
{
// btnYear.Text = TxtBtnYear.Text;
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()
{
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// PostBackTrigger trigger = new PostBackTrigger();
// trigger.ControlID = Button1.UniqueID;
// ((UpdatePanel)Master.FindControl("UpdatePanel1")).Triggers.Add(trigger);
}
void page_init()
{
<EFBFBD><EFBFBD>Master.ScriptMgr.EnablePartialRendering = false;
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();
}
}