示例#1
0
        /// <summary>
        /// 根据日期得到该日期对应的考勤设置情况
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        public static Model.AttendanceSetting GetAttendanceSettingByDate(DateTime date)
        {
            string sql = "select * from AttendanceSetting where Date=@Date";

            SqlParameter[] para =
            {
                new SqlParameter("Date", date)
            };
            DataTable dt = DBHelper.ExecuteSelect(sql, para);

            Model.AttendanceSetting a;
            if (dt.Rows.Count > 0)
            {
                //表示有考勤设置
                DataRow dr = dt.Rows[0];//得到第一行数据
                a           = new Model.AttendanceSetting();
                a.Date      = (DateTime)dr["Date"];
                a.SettingID = (int)dr["SettingID"];
                a.Status    = (byte)dr["Status"];
            }
            else
            {
                //表示没有考勤设置
                a = null;
            }
            return(a);
        }
示例#2
0
 protected void gvAttendanceSetting_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         DropDownList            ddlStatus = (DropDownList)e.Row.FindControl("ddlStatus");
         Label                   lblDate   = (Label)e.Row.FindControl("lblDate");
         Model.AttendanceSetting a         = BLL.AttendanceSetting.GetAttendanceSettingByDate(Convert.ToDateTime(lblDate.Text));
         if (a != null)
         {
             //表示当前日期在数据库的表里面有设置
             ddlStatus.SelectedValue = a.Status.ToString();
         }
     }
 }
示例#3
0
 protected void gvAttendSettings_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         DropDownList ddlStatus = (DropDownList)e.Row.FindControl("ddlStatus");
         DataRowView  drv       = (DataRowView)e.Row.DataItem;
         //1、得到当前行对应的日期
         DateTime date             = (DateTime)drv["Date"];
         Model.AttendanceSetting a = BLL.AttendanceBll.GetAttendanceSettingByDate(date);
         if (a != null)
         {
             //表示有考勤设置
             ddlStatus.SelectedValue = a.Status.ToString();
         }
     }
 }
示例#4
0
 /// <summary>
 /// 修改考勤设置信息
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public static bool UpdateAttendanceSettingInfo(Model.AttendanceSetting model)
 {
     return(DAL.AttendanceSetting.UpdateAttendanceSettingInfo(model));
 }
示例#5
0
 /// <summary>
 /// 新增考勤设置信息
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public static bool AddAttendanceSettingInfo(Model.AttendanceSetting model)
 {
     return(DAL.AttendanceSetting.AddAttendanceSettingInfo(model));
 }
示例#6
0
        //public string TableDataBind()
        //{
        //    string str = "";
        //    string where = "";
        //    dt = bllStore.SelectStoreInfo(where);
        //    int k = 0;
        //    for (int j = 0; j < Math.Ceiling((double)dt.Rows.Count / 4); j++)
        //    {
        //        str += "<tr>";
        //        if (k < Math.Floor((double)dt.Rows.Count / 4))
        //        {
        //            str += "<td><div class=\"tball\"><a class=\"atb1\" href=\"productInfo.aspx?ID=" + dt.Rows[k * 4]["id"].ToString() + "\"><div class=\"tbimg\"><img class=\"image\" src='" + dt.Rows[k * 4 + 0]["storeImg"].ToString() + "' title=" + dt.Rows[k * 4 + 0]["storeMemo"].ToString() + " /></div><div class=\"tblbl1\"><label class=\"Name\">" + dt.Rows[k * 4 + 0]["storeName"].ToString() + "</label><br /><br /><label class=\"tblbl2\"><label class=\"tblbl3\">★★★★★</label><br /><br />月销:" + dt.Rows[k * 4 + 0]["saleNum"].ToString() + "份<br /><br /><label class=\"tblbl2\">0元起送/配送费1元</label><br /><br /><label>配送时间:" + dt.Rows[k * 4 + 0]["foodtime"].ToString() + "分钟</label></label></div></a></div></td>"
        //                 + "<td><div class=\"tball\"><a class=\"atb1\" href=\"productInfo.aspx?ID=" + dt.Rows[k * 4 + 1]["id"].ToString() + "\"><div class=\"tbimg\"><img class=\"image\" src='" + dt.Rows[k * 4 + 1]["storeImg"].ToString() + "' title=" + dt.Rows[k * 4 + 1]["storeMemo"].ToString() + " /></div><div class=\"tblbl1\"><label class=\"Name\">" + dt.Rows[k * 4 + 1]["storeName"].ToString() + "</label><br /><br /><label class=\"tblbl2\"><label class=\"tblbl3\">★★★★★</label><br /><br />月销:" + dt.Rows[k * 4 + 1]["saleNum"].ToString() + "份<br /><br /><label class=\"tblbl2\">0元起送/配送费1元</label><br /><br /><label>配送时间:" + dt.Rows[k * 4 + 1]["foodtime"].ToString() + "分钟</label></label></div></a></div></td>"
        //                 + "<td><div class=\"tball\"><a class=\"atb1\" href=\"productInfo.aspx?ID=" + dt.Rows[k * 4 + 2]["id"].ToString() + "\"><div class=\"tbimg\"><img class=\"image\" src='" + dt.Rows[k * 4 + 2]["storeImg"].ToString() + "' title=" + dt.Rows[k * 4 + 2]["storeMemo"].ToString() + " /></div><div class=\"tblbl1\"><label class=\"Name\">" + dt.Rows[k * 4 + 2]["storeName"].ToString() + "</label><br /><br /><label class=\"tblbl2\"><label class=\"tblbl3\">★★★★★</label><br /><br />月销:" + dt.Rows[k * 4 + 2]["saleNum"].ToString() + "份<br /><br /><label class=\"tblbl2\">0元起送/配送费1元</label><br /><br /><label>配送时间:" + dt.Rows[k * 4 + 2]["foodtime"].ToString() + "分钟</label></label></div></a></div></td>"
        //                 + "<td><div class=\"tball\"><a class=\"atb1\" href=\"productInfo.aspx?ID=" + dt.Rows[k * 4 + 3]["id"].ToString() + "\"><div class=\"tbimg\"><img class=\"image\" src='" + dt.Rows[k * 4 + 3]["storeImg"].ToString() + "' title=" + dt.Rows[k * 4 + 3]["storeMemo"].ToString() + " /></div><div class=\"tblbl1\"><label class=\"Name\">" + dt.Rows[k * 4 + 3]["storeName"].ToString() + "</label><br /><br /><label class=\"tblbl2\"><label class=\"tblbl3\">★★★★★</label><br /><br />月销:" + dt.Rows[k * 4 + 3]["saleNum"].ToString() + "份<br /><br /><label class=\"tblbl2\">0元起送/配送费1元</label><br /><br /><label>配送时间:" + dt.Rows[k * 4 + 3]["foodtime"].ToString() + "分钟</label></label></div></a></div></td>";
        //            k++;
        //        }

        //        else
        //        {
        //            for (int i = 0; i < dt.Rows.Count % 4; i++)
        //            {
        //                str += "<td><div class=\"tball\"><a class=\"atb1\" href=\"productInfo.aspx?ID=" + dt.Rows[i + 4 * k]["id"].ToString() + "\"><div class=\"tbimg\"><img class=\"image\" src='" + dt.Rows[i + 4 * k]["storeImg"].ToString() + "' title=" + dt.Rows[i + 4 * k]["storeMemo"].ToString() + " /></div><div class=\"tblbl1\"><label class=\"Name\">" + dt.Rows[i + 4 * k]["storeName"].ToString() + "</label><br /><br /><label class=\"tblbl2\"><label class=\"tblbl3\">★★★★★</label><br /><br />月销:" + dt.Rows[i + 4 * k]["saleNum"].ToString() + "份<br /><br /><label class=\"tblbl2\">0元起送/配送费1元</label><br /><br /><label>配送时间:" + dt.Rows[i + 4 * k]["foodtime"].ToString() + "分钟</label></label></div></a></div></td>";
        //            }
        //        }
        //        str += "</tr>";
        //    }

        //    return str;
        //}

        protected void gvAttendanceInfo_RowDataBound1(object sender, GridViewRowEventArgs e)
        {
            //判断该行是否是数据行
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                //1、得到该行对应的日期
                DataRowView    drv          = (DataRowView)e.Row.DataItem;
                DateTime       date         = (DateTime)drv["Date"];
                Label          lblFirstTime = (Label)e.Row.FindControl("lblFirstTime");
                Label          lblLastTime  = (Label)e.Row.FindControl("lblLastTime");
                Label          lblStatus    = (Label)e.Row.FindControl("lblStatus");
                Model.UserInfo u            = (Model.UserInfo)Session["User"];
                DataTable      dt           = BLL.AttendanceInfo.GetMyAttendanceInfo(u.UserID, date);
                //得到DataTable的第一行
                DataRow dr = dt.Rows[0];
                //2、得到首次打卡时间
                DateTime firstTime = DateTime.Now;
                if (dr["FirstTime"] != DBNull.Value)
                {
                    firstTime         = (DateTime)dr["FirstTime"];
                    lblFirstTime.Text = firstTime.ToString();
                }
                //3、得到最后打卡时间
                DateTime lastTime = DateTime.Now;
                if (dr["LastTime"] != DBNull.Value)
                {
                    lastTime         = (DateTime)dr["LastTime"];
                    lblLastTime.Text = lastTime.ToString();
                }
                //4、得到当天的考勤设置状态
                DataTable dtApprove       = BLL.Approve.GetApproveInfo(" and b.UserID='" + u.UserID + "'");
                Model.AttendanceSetting a = BLL.AttendanceSetting.GetAttendanceSettingByDate(date);
                //5、得到当天的上班时间
                DateTime d1 = date.AddHours(8).AddMinutes(30);
                //上午下班时间
                DateTime d2 = date.AddHours(11).AddMinutes(30);
                //下午上班时间
                DateTime d3 = date.AddHours(13).AddMinutes(50);
                //6、得到当天的下班时间
                DateTime d4 = date.AddHours(17);
                if (a != null)
                {
                    //表示当天有考勤设置
                    if (a.Status == 2)
                    {
                        // a.Status == 2表示休假
                        lblStatus.Text = "<font color='#99dd33'>休假</font>";
                    }
                    else
                    {
                        //a.Status == 1表示上班
                        if (firstTime > d1)
                        {
                            lblStatus.Text = "<font color='#00FFFF'>迟到</font>";
                        }
                        if (lastTime < d4)
                        {
                            lblStatus.Text = "<font color='#00FFFF'>早退</font>";
                        }
                        if ((firstTime > d1) && (lastTime < d4))
                        {
                            lblStatus.Text = "<font color='#00FFFF'>迟到</font>and<font color='#00FFFF'>早退</font>";
                            if (lblFirstTime.Text == lblLastTime.Text)
                            {
                                lblStatus.Text = "<font color='#FFC0CB'>未打卡</font>";
                            }
                        }
                        if (firstTime < d1 && lastTime > d4)
                        {
                            lblStatus.Text = "<font color='#3CB371'>正常</font>";
                        }
                        if (string.IsNullOrEmpty(lblFirstTime.Text) && string.IsNullOrEmpty(lblLastTime.Text))
                        {
                            lblStatus.Text = "<font color='#FF0000'>缺勤</font>";
                        }
                        //a.Status == 1表示上班
                        //请假一天
                        for (int i = 0; i < dtApprove.Rows.Count; i++)
                        {
                            //{                                       begin<=   8:30    11:30<=end
                            //                    2014-02-11 08:30:00.000	2014-02-11 11:30:00.000
                            //                    2014-02-17 13:50:00.000	2014-02-17 17:00:00.000
                            //                    2014-02-19 08:30:00.000	2014-02-19 17:00:00.000
                            if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d1 && d4 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {
                                lblStatus.Text = "<font color='#436EEE'>请假</font>";
                            }
                            else if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d1 && d2 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {       //上午请假
                                if (firstTime > d3)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>迟到</font>";
                                }
                                if (lastTime < d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>早退</font>";
                                }
                                if (firstTime > d3 && lastTime < d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>迟到</font>,<font color='#00FFFF'>早退</font>";
                                }
                                if (firstTime < d3 && lastTime > d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#3CB371'>正常</font>";
                                }
                            }
                            else if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d3 && d4 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {       //下午请假
                                if (firstTime > d1)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>迟到</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (lastTime < d2)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>早退</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (firstTime > d1 && lastTime < d2)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>迟到</font>,<font color='#00FFFF'>早退</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (firstTime < d1 && lastTime > d2)
                                {
                                    lblStatus.Text = "<font color='#3CB371'>正常</font>and<font color='#436EEE'>请假</font>";
                                }
                            }
                        }
                    }
                }
                else
                {
                    //表示当天木有考勤设置
                    //判断当天是否是星期六和星期天
                    if ((date.DayOfWeek == DayOfWeek.Saturday) || (date.DayOfWeek == DayOfWeek.Sunday))
                    {
                        //表示是星期六和星期天
                        lblStatus.Text = "<font color='#808080'>休假</font>";
                    }
                    else
                    {
                        if (firstTime > d1)
                        {
                            lblStatus.Text = "<font color='#00FFFF'>迟到</font>";
                        }
                        if (lastTime < d4)
                        {
                            lblStatus.Text = "<font color='#00FFFF'>早退</font>";
                        }
                        if ((firstTime > d1) && (lastTime < d4))
                        {
                            lblStatus.Text = "<font color='#00FFFF'>迟到</font>and<font color='#00FFFF'>早退</font>";
                            if (lblFirstTime.Text == lblLastTime.Text)
                            {
                                lblStatus.Text = "<font color='#FFC0CB'>未打卡</font>";
                            }
                        }
                        if (firstTime < d1 && lastTime > d4)
                        {
                            lblStatus.Text = "<font color='#3CB371'>正常</font>";
                        }
                        if (string.IsNullOrEmpty(lblFirstTime.Text) && string.IsNullOrEmpty(lblLastTime.Text))
                        {
                            lblStatus.Text = "<font color='#FF0000'>缺勤</font>";
                        }
                        //a.Status == 1表示上班
                        //请假一天
                        for (int i = 0; i < dtApprove.Rows.Count; i++)
                        {
                            //{                                       begin<=   8:30    11:30<=end
                            //                    2014-02-11 08:30:00.000	2014-02-11 11:30:00.000
                            //                    2014-02-17 13:50:00.000	2014-02-17 17:00:00.000
                            //                    2014-02-19 08:30:00.000	2014-02-19 17:00:00.000
                            if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d1 && d4 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {
                                lblStatus.Text = "<font color='#436EEE'>请假</font>";
                            }
                            else if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d1 && d2 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {       //上午请假
                                if (firstTime > d3)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>迟到</font>";
                                }
                                if (lastTime < d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>早退</font>";
                                }
                                if (firstTime > d3 && lastTime < d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#00FFFF'>迟到</font>,<font color='#00FFFF'>早退</font>";
                                }
                                if (firstTime < d3 && lastTime > d4)
                                {
                                    lblStatus.Text = "<font color='#436EEE'>请假</font>and<font color='#3CB371'>正常</font>";
                                }
                            }
                            else if (DateTime.Parse(dtApprove.Rows[i]["BeginDate"].ToString()) <= d3 && d4 <= DateTime.Parse(dtApprove.Rows[i]["EndDate"].ToString()))
                            {       //下午请假
                                if (firstTime > d1)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>迟到</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (lastTime < d2)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>早退</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (firstTime > d1 && lastTime < d2)
                                {
                                    lblStatus.Text = "<font color='#00FFFF'>迟到</font>,<font color='#00FFFF'>早退</font>and<font color='#436EEE'>请假</font>";
                                }
                                if (firstTime < d1 && lastTime > d2)
                                {
                                    lblStatus.Text = "<font color='#3CB371'>正常</font>and<font color='#436EEE'>请假</font>";
                                }
                            }
                        }
                    }
                }
            }
        }
示例#7
0
 protected void gvMyAttend_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     //判断当前行是否是数据行
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         Label       lblFirstTime = (Label)e.Row.FindControl("lblFirstTime");
         Label       lblLastTime  = (Label)e.Row.FindControl("lblLastTime");
         Label       lblStatus    = (Label)e.Row.FindControl("lblStatus");
         DataRowView drv          = (DataRowView)e.Row.DataItem;
         //1、得到当前行对应的日期
         DateTime date = (DateTime)drv["Date"];
         //2、得到首次打卡时间
         DateTime firstTime = new DateTime(1900, 1, 1);
         //3、得到最后打卡时间
         DateTime       lastTime = new DateTime(1900, 1, 1);
         Model.UserInfo u        = (Model.UserInfo)Session["User"];
         DataTable      dt       = BLL.AttendanceBll.GetAttendanceInfoByCondition(u.UserID, date);
         if (dt.Rows.Count > 0)
         {
             DataRow dr = dt.Rows[0];
             if (dr["FirstTime"] != DBNull.Value)
             {
                 firstTime         = (DateTime)dr["FirstTime"];
                 lblFirstTime.Text = firstTime.ToString();
             }
             if (dr["LastTime"] != DBNull.Value)
             {
                 lastTime         = (DateTime)dr["LastTime"];
                 lblLastTime.Text = lastTime.ToString();
             }
         }
         //4、得到当天的考勤状态的设置情况
         Model.AttendanceSetting a = BLL.AttendanceBll.GetAttendanceSettingByDate(date);
         //5、得到上班时间
         DateTime d1 = date.AddHours(8).AddMinutes(30);
         //6、得到下班时间
         DateTime d4 = date.AddHours(17).AddMinutes(30);
         if (a != null)
         {
             //表示当前日期有考勤设置
             if (a.Status == 2)
             {
                 //a.Status == 2表示当天休假
                 lblStatus.Text = "<font color='#99ff00'>休假</font>";
             }
             else
             {
                 if (lblFirstTime.Text == "")
                 {
                     lblStatus.Text = "<font color='#dd0000'>缺勤</font>";
                 }
                 else
                 {
                     //代表当天要上班
                     if (firstTime > d1)
                     {
                         lblStatus.Text = "<font color='#dd0033'>迟到</font>";
                     }
                     if (lastTime < d4)
                     {
                         lblStatus.Text = "<font color='#cc11ee'>早退</font>";
                     }
                     if ((firstTime > d1) && (lastTime < d4))
                     {
                         lblStatus.Text = "<font color='#dd0033'>迟到</font>&<font color='#cc11ee'>早退</font>";
                     }
                     if (DateTime.Parse(lblFirstTime.Text) < d1 && DateTime.Parse(lblLastTime.Text) > d4)
                     {
                         lblStatus.Text = "<font color='#000099'>正常</font>";
                     }
                 }
             }
         }
         else
         {
             //表示当前日期木有考勤设置
             //判断当前日期是星期几
             if ((date.DayOfWeek == DayOfWeek.Saturday) || (date.DayOfWeek == DayOfWeek.Sunday))
             {
                 //表示当天为星期六或星期天
                 lblStatus.Text = "<font color='#99ff00'>休假</font>";
             }
             else
             {
                 if (lblFirstTime.Text == "")
                 {
                     lblStatus.Text = "<font color='#dd0000'>缺勤</font>";
                 }
                 else
                 {
                     //表示当天是星期一到星期五
                     if (firstTime > d1)
                     {
                         lblStatus.Text = "<font color='#dd0033'>迟到</font>";
                     }
                     if (lastTime < d4)
                     {
                         lblStatus.Text = "<font color='#cc11ee'>早退</font>";
                     }
                     if ((firstTime > d1) && (lastTime < d4))
                     {
                         lblStatus.Text = "<font color='#dd0033'>迟到</font>&<font color='#cc11ee'>早退</font>";
                     }
                     if (DateTime.Parse(lblFirstTime.Text) < d1 && DateTime.Parse(lblLastTime.Text) > d4)
                     {
                         lblStatus.Text = "<font color='#000099'>正常</font>";
                     }
                 }
             }
         }
     }
 }
示例#8
0
        /// <summary>
        /// 修改考勤设置信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static bool UpdateAttendanceSettingInfo(Model.AttendanceSetting model)
        {
            string sql = " update AttendanceSetting set Date='" + model.Date + "',Status=" + model.Status + " where SettingID=" + model.SettingID + "";

            return(DBHelper.ExecuteNonQuery(sql));
        }
示例#9
0
        /// <summary>
        /// 新增考勤设置信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static bool AddAttendanceSettingInfo(Model.AttendanceSetting model)
        {
            string sql = " insert into AttendanceSetting values('" + model.Date + "'," + model.Status + ")";

            return(DBHelper.ExecuteNonQuery(sql));
        }