⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucviewprojectweekly.ascx.cs

📁 简单项目管理系统源码 该源码为某公司的项目管理系统Demo版
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using projmanager;

public partial class userControl_ucViewProjectWeekly : System.Web.UI.UserControl
{
    private static string bindstatus = "thisweek";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string employeeid = Session["LoginEmployeeID"].ToString();
            string departmentid = Session["DepartmentID"].ToString();

            bool flag1 = Utilities.CheckEmpIsProjectManager(employeeid, departmentid);

            bool flag2 = (bool)Session["IsAdmin"];
            if (flag1 == false && flag2)
            {
                Response.Redirect("login.aspx");
                return;
            }
            bindThisWeek();
            bindDDL();
        }
    }
    private void bindDDL()
    {
        string sql = "select groupname,groupid from [group] where departmentid=" + Session["DepartmentID"].ToString();
        Utilities.BindingDropDownList(ddlGroup,DataAccess.ExecuteDataTable(sql), "groupname", "groupid");
        ddlGroup.Items.Insert(0, new ListItem("请选择小组", "-1"));
    }

    private void bindData()
    {
        switch (bindstatus)
        {
            case "thisweek": bindThisWeek(); break;
            case "priorweek": bindPriorWeek(); break;
            case "search": bindSearch(); break;
            case "all": bindAll(); break;
            
        }
        
    }

    private void bindThisWeek()
    {
        string departmentid = Session["DepartmentID"].ToString();
        //最初显示本周周报
        int week = (int)DateTime.Now.DayOfWeek;
        int addeddays = 1 - week;

        DateTime dt = DateTime.Now.AddDays(addeddays);

        DateTime startDate = new DateTime(dt.Year, dt.Month, dt.Day);
        string employeeid = Session["LoginEmployeeID"].ToString();
        string sql = "select *" +
            ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                     ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                     ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                     ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                     ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                     " from weekly w" +
                     " where  (submitdate between '" + startDate + "' and  '" + DateTime.Now.ToString() + "')" +
                     " and (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";

        Utilities.BindingDataGridView(this.GridView1, DataAccess.ExecuteDataTable(sql), new string[] { "weeklyid" });

    }
   
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        this.GridView1.EditIndex = -1;
        string scoreProjectManager = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("tbScoreProjectManager")).Text;
        string scoreGroupLeader = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("tbScoreGroupLeader")).Text;

        string remarkProjectManager = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("tbRemarkProjectManager")).Text;

        string weeklyid = this.GridView1.DataKeys[e.RowIndex].Value.ToString();

        string sql = "update weekly set costtime_effect=costtime*" + scoreProjectManager + "*" + scoreGroupLeader +
                     //",remark_groupleader='" + remarkGroupLeader + "'" +
                     ",remark_projectmanager='" + remarkProjectManager + "'" +
                     ",score_groupleader='" + scoreGroupLeader + "'" +
                     ",score_projectmanager='" + scoreProjectManager + "'" +
                     ",remarkdate_projectmanager='" + DateTime.Now.ToString() + "'" + 
                     " where weeklyid=" + weeklyid;
                    

        if (DataAccess.ExecuteNonQuery(sql) == 1)
        {
            this.lbMsg.Text = "项目更新成功";
            bindData();
        }
        else
        {
            this.lbMsg.Text = "项目失败成功";
        }
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        string weeklyid = this.GridView1.DataKeys[e.NewEditIndex].Value.ToString();
        string employeeid = Session["LoginEmployeeID"].ToString();
        if (Utilities.IsMyWeekly(weeklyid, employeeid) == true)//自己不能编辑自己的
        {
            this.lbMsg.Text = "不能自己给自己打分";
            this.GridView1.EditIndex = -1;
            return;
        }

        this.GridView1.EditIndex = e.NewEditIndex;
        bindData();
        

        TextBox tb = (TextBox)this.GridView1.Rows[e.NewEditIndex].FindControl("tbScoreProjectManager");
        if (tb.Text == "")
        {
            tb.Text = "1";
        }
        TextBox tb1 = (TextBox)this.GridView1.Rows[e.NewEditIndex].FindControl("tbScoreGroupLeader");
        if (tb1.Text == "")
        {
            tb1.Text = "1";
        }
    }
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        this.GridView1.EditIndex = -1;
        bindData();
    }
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        this.GridView1.PageIndex = e.NewPageIndex;
        bindData();
    }
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        
    }
    protected void btnViewPriorWeek_Click(object sender, EventArgs e)
    {
        bindstatus = "priorweek";
        bindPriorWeek();
    }

    private void bindPriorWeek()
    {
        //最初显示上周周报
        int week = (int)DateTime.Now.DayOfWeek;

        DateTime dt1 = DateTime.Now.AddDays(-week - 6);
        DateTime dt2 = DateTime.Now.AddDays(-week - 1);
        string employeeid = Session["LoginEmployeeID"].ToString();
        DateTime startDate = new DateTime(dt1.Year, dt1.Month, dt1.Day);
        DateTime endDate = new DateTime(dt2.Year, dt2.Month, dt2.Day);
        string sql = "select *" +
            ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                      ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                      ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                      ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                      ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                      " from weekly w" +
                      " where(submitdate between '" + startDate.ToString() + "' and  '" + endDate.ToString() + "')" +
                      " and (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";
        Utilities.BindingDataGridView(this.GridView1, DataAccess.ExecuteDataTable(sql), new string[] { "weeklyid" });
    }
    protected void btnViewAll_Click(object sender, EventArgs e)
    {
        bindstatus = "all";
        bindAll();
    }

    private void bindAll()
    {
        string employeeid = Session["LoginEmployeeID"].ToString();
        string sql = "select *" +
            ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                     ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                     ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                     ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                     ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                     " from weekly w" +
                     " where (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";

        Utilities.BindingDataGridView(this.GridView1, DataAccess.ExecuteDataTable(sql), new string[] { "weeklyid" });
    }
    protected void btnViewThisWeek_Click(object sender, EventArgs e)
    {
        bindstatus = "priorweek";
        bindThisWeek();
    }
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        bindstatus = "search";
        bindSearch();
        
    }

    private void bindSearch()
    {
        string groupid = ddlGroup.SelectedValue;
        DateTime startDate = new DateTime(1900, 1, 1);
        DateTime endDate = new DateTime(1900, 1, 1);
        int week = (int)DateTime.Now.DayOfWeek;
        string sql = "";
        string employeeid = Session["LoginEmployeeID"].ToString();
        if (this.rrblWeek.SelectedValue == "-1")//上周
        {
            DateTime dt1 = DateTime.Now.AddDays(-week - 6);
            DateTime dt2 = DateTime.Now.AddDays(-week - 1);
            startDate = new DateTime(dt1.Year, dt1.Month, dt1.Day);
            endDate = new DateTime(dt2.Year, dt2.Month, dt2.Day);
            sql = "select *" +
                ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                      ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                      ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                      ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                      ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                      " from weekly w" +
                      " where(submitdate between '" + startDate.ToString() + "' and  '" + endDate.ToString() + "')" +
                      " and (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";
        }
        else if (this.rrblWeek.SelectedValue == "0")
        {
            //显示本周周报

            int addeddays = 1 - week;
            DateTime dt = DateTime.Now.AddDays(addeddays);
            startDate = new DateTime(dt.Year, dt.Month, dt.Day);
            endDate = DateTime.Now;
            sql = "select *" +
                ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                      ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                      ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                      ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                      ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                      " from weekly w" +
                      " where(submitdate between '" + startDate.ToString() + "' and  '" + endDate.ToString() + "')" +
                      " and (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";
        }
        else//show all
        {
            sql = "select *" +
                ",isnull((select employeename from employee e where e.employeeid=w.employeeid),null)as employeename" +
                     ",isnull((select employeename from employee e where e.employeeid=(select projectmanagerid from project p where p.projectid=w.projectid)),null)as projectmanagername" +
                     ",isnull((select e.employeename  from employee e  where e.employeeid=(select groupleaderid from [group] g where g.groupid =(select groupid from employee_group eg where eg.employeeid=w.employeeid))),null)as groupleadername" +
                     ",isnull((select g.groupname from [group] g where g.groupid=(select groupid from employee_group eg where eg.employeeid=w.employeeid)),null)as groupname" +
                     ",isnull((select projectname from project p where p.projectid=w.projectid),null)as projectname" +
                     " from weekly w" +
                     " where (w.projectid in(select projectid from project where projectmanagerid= " + employeeid + "))";

        }


        if (groupid != "-1")//查看组的
        {
            sql += " and (w.employeeid in(select employeeid from employee_group eg where eg.groupid=" + groupid + "))";
        }

        Utilities.BindingDataGridView(this.GridView1, DataAccess.ExecuteDataTable(sql), new string[] { "weeklyid" });
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -