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

📄 showovertimeinfo.aspx.cs

📁 一个小型的人事管理系统
💻 CS
字号:
using System;
using System.Data;
using System.Data.Sql;
using System.Data.SqlClient;
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 System.Globalization;


public partial class ShowOvertimeInfo : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        GridOvertime.Visible = false;
        ApproverName.Visible = false;
        Reason.Visible = false;
        DenyReason.Visible = false;
        TimeError.Visible = false;
        NoRecord.Visible = false;
    }

    protected void ShowMore(string OvertimeID)
    {
        String connString = System.Configuration.ConfigurationManager.AppSettings["SQLCONNECTION"];
        SqlConnection dbConnection = new SqlConnection(connString);
        String query = "SELECT Name AS ApproverName,Reason,DenyReason FROM tblOvertime,tblEmployee"
        + " WHERE tblOvertime.OvertimeID='" + OvertimeID.ToString() + "' AND tblOvertime.ApproverID = tblEmployee.EmployeeID";
        SqlCommand dbCommand = new SqlCommand(query, dbConnection);
        dbConnection.Open();
        SqlDataReader mydr = dbCommand.ExecuteReader();
        while (mydr.Read())
        {
            ApproverName.Text = "审批者:"+mydr["ApproverName"].ToString();
            Reason.Text = "加班事由:"+mydr["Reason"].ToString();
            DenyReason.Text = "否决理由:"+mydr["DenyReason"].ToString();
        }
        ApproverName.Visible = true;
        Reason.Visible = true;
        DenyReason.Visible = true;
        GridOvertime.Visible = true;
    }

    public void SearchOvertime(int type, DateTime StartTime, DateTime EndTime, string EmployeeID)
    {
        String connString = System.Configuration.ConfigurationManager.AppSettings["SQLCONNECTION"];
        SqlConnection dbConnection = new SqlConnection(connString);
        String query;
        query = "SELECT tblOvertime.OvertimeID,tblOvertime.StartTime,tblOvertime.EndTime,tblOvertime.SubmitTime,"+
            "tblOvertimeType.Description,tblOvertime.Type,tblOvertime.Status,tblOvertime.Hours " +
            "FROM tblOvertime RIGHT JOIN tblOvertimeType ON tblOvertime.Type = tblOvertimeType.type" +
            " WHERE SubmitTime >= @StartTime AND SubmitTime < @EndTime AND EmployeeID = @EmployeeID";
        if (1 == type) query += " AND tblOvertime.Type = '1'";
        if (2 == type) query += " AND tblOvertime.Type = '2'";
        SqlCommand dbCommand = new SqlCommand(query, dbConnection);
        dbCommand.Parameters.Add(new SqlParameter("@StartTime", StartTime));
        dbCommand.Parameters.Add(new SqlParameter("@EndTime", EndTime));
        dbCommand.Parameters.Add(new SqlParameter("@EmployeeID", EmployeeID));

        dbConnection.Open();
        SqlDataReader dsOvertime = dbCommand.ExecuteReader();
        GridOvertime.DataSource = dsOvertime;
        GridOvertime.Visible = true;
        GridOvertime.DataBind();
        dbConnection.Close();
    }

    protected bool CheckTime(string str)
    {
        string[] sarray;
        int day=0, month=0, year=0,count=0;
        foreach(char ch in str)
        {
            if(!(ch=='/' || (ch>='0' && ch<='9')))
                return false;
        }
        sarray= str.Split('/');
        if (sarray.Length!= 3) return false;
        year = int.Parse(sarray[0]);
        month = int.Parse(sarray[1]);
        day = int.Parse(sarray[2]);
        if (day < 1 || day > 31) return false;
        if (month < 1 || month > 12) return false;
        if (year < 1800 || year > 9999) return false;
        return true;
    }
    protected void ButtonSearch_Click(object sender, EventArgs e)
    {
        int day, month, year, count;
        string strtime;
        string[] sarray;
        year = month = day = 0;

        if (CheckTime(TextBoxTimeBegin.Text) == true && CheckTime(TextBoxTimeEnd.Text) == true)
        {
            strtime = TextBoxTimeBegin.Text.ToString();
            sarray = strtime.Split('/');
            count = 0;
            foreach (string sub in sarray)
            {
                count++;
                if (1 == count) year = int.Parse(sub.ToString());
                else if (2 == count) month = int.Parse(sub.ToString());
                else day = int.Parse(sub.ToString());
            }
            DateTime start = new DateTime(year, month, day);

            strtime = TextBoxTimeEnd.Text.ToString();
            sarray = strtime.Split('/');
            count = 0;
            foreach (string sub in sarray)
            {
                count++;
                if (1 == count) year = int.Parse(sub.ToString());
                else if (2 == count) month = int.Parse(sub.ToString());
                else day = int.Parse(sub.ToString());
            }
            DateTime end = new DateTime(year, month, day);
            end.AddYears(year);
            end.AddMonths(month);
            end.AddDays(day);

            SearchOvertime(int.Parse(SearchType.SelectedIndex.ToString()), start, end, Session["EmployeeID"].ToString());
            if (GridOvertime.Rows.Count == 0)
                NoRecord.Visible = true;
        }
        else
        {
            TimeError.Visible = true;
        }
    }

    protected void GridOvertime_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "ShowMore")
        {
            ShowMore(e.CommandArgument.ToString());
        }
    }
}

⌨️ 快捷键说明

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