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

📄 ucviewmyweekly.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_ucViewMyWeekly : System.Web.UI.UserControl
{
    private static string bindstatus = "thisweek";
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            bindThisWeek();
            bindDDL();
        }
    }
    private void bindDDL()
    {
        string sql = "select projectname,projectid from project where departmentid=" + Session["DepartmentID"].ToString();
        Utilities.BindingDropDownList(ddlProj, DataAccess.ExecuteDataTable(sql), "projectname", "projectid");
        ddlProj.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.employeeid= " + employeeid + ")";

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

    }

    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        this.GridView1.EditIndex = -1;
        string costtime = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("lbCostTime")).Text;
        string workdetail = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("tbWorkDetail")).Text;
        string nextweekplan = ((TextBox)this.GridView1.Rows[e.RowIndex].FindControl("tbNextWeekPlan")).Text;
        string weeklyid = this.GridView1.DataKeys[e.RowIndex].Value.ToString();

        string sql = "update weekly set " +
                     " costtime='" + costtime + "'" +
                     ",workdetail='" + workdetail + "'" +
                     ",nextweekworkplan='" + nextweekplan + "'" +
                     " where weeklyid=" + weeklyid;

        if (DataAccess.ExecuteNonQuery(sql) == 1)
        {
            this.lbMsg.Text = "项目更新成功";
            bindData();
        }
        else
        {
            this.lbMsg.Text = "项目失败成功";
        }
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        DateTime priorweek1 ;
        DateTime p1 = DateTime.Now;
        
        //检查时间,若不是上周或本周,则不可以修改。
        int week = (int)DateTime.Now.DayOfWeek;
        string employeeid = Session["LoginEmployeeID"].ToString();
        priorweek1 = DateTime.Now.AddDays(-6-week);
        p1 = new DateTime(priorweek1.Year, priorweek1.Month, priorweek1.Day);
          
        string sql1 = "select weeklyid from weekly where employeeid=" + employeeid +
                      " and submitdate between'" + p1.ToString() + "' and '" + DateTime.Now.ToString() +
                      "'";

        if (DataAccess.ExecuteScalar(sql1) != null)
        {
            this.lbMsg.Text = "你只能修改本周和上周的周报";
            this.GridView1.EditIndex = -1;
            return;
        }


        this.GridView1.EditIndex = e.NewEditIndex;
        bindData();
    }
    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.employeeid= " + 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.employeeid= " + 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 projectid = ddlProj.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.employeeid= " + 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.employeeid= " + 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.employeeid= " + employeeid + ")";

        }
        if (projectid != "-1")//查看组的
        {
            sql += " and (w.projectid =" + projectid + ")";
        }

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

⌨️ 快捷键说明

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