Exemplo n.º 1
0
    protected void calshift_DayRender(object sender, DayRenderEventArgs e)
    {
        string morning = "";
        string noon    = "";
        int    ifday   = 0;
        int    ifnight = 0;

        if (e.Day.IsOtherMonth)
        {
            e.Cell.Controls.Clear();
        }
        else
        {
            DateTime          dateToday = e.Day.Date;
            workDBDataContext db        = new workDBDataContext();

            /*根据值班表生成*/
            var query_before = from a in db.workhistory
                               where a.worktime == dateToday.AddDays(-1)
                               select a;
            var query_current = from a in db.workhistory
                                where a.worktime == dateToday
                                select a;


            /*根据调休申请表生成*/
            var query_leave = from a in db.overtime
                              where ((a.overwork.Value.Year == dateToday.Year && a.overwork.Value.Month == dateToday.Month) || (a.originwork.Value.Year == dateToday.Year && a.originwork.Value.Month == dateToday.Month)) && a.approve == 4
                              select a;

            if (query_leave.Count() != 0)
            {
                //申请到的调休
                foreach (var work in query_leave)
                {
                    if (work.overwork == dateToday)
                    {
                        if (work.current_shift == "上午")
                        {
                            morning += work.name + ";";
                        }
                        else if (work.current_shift == "下午")
                        {
                            noon += work.name + ";";
                        }
                    }
                }

                // 本来调休
                foreach (var work in query_leave)
                {
                    if (work.originwork == dateToday && work.origin_shift == "当天下午")
                    {
                        ifnight = -1;
                    }
                    if (work.originwork == dateToday.AddDays(-1) && work.origin_shift == "明天上午")
                    {
                        ifday = -1;
                    }
                }
            }

            //原始调休
            if (ifday == 0)
            {
                morning += query_before.First().worker1;
            }
            if (ifnight == 0)
            {
                noon += query_current.First().worker;
            }

            e.Cell.Text = "<div style = 'font-size:22px;" + (e.Day.Date.Day == DateTime.Now.Day ? "background-color:#C6E7FF; color:#0B67A9'>" : "'>") + e.Day.Date.Day + "</br>"
                          + "<div style='font-size:12px; color:#676767;'>上午:"
                          + morning + "</br >下午:" + noon + "</div></div>";
        }
    }
Exemplo n.º 2
0
    protected void caljiaban_DayRender(object sender, DayRenderEventArgs e)
    {
        string morning = "";
        string noon    = "";

        if (e.Day.IsOtherMonth)
        {
            e.Cell.Controls.Clear();
        }
        else
        {
            DateTime          dateToday = e.Day.Date;
            workDBDataContext db        = new workDBDataContext();
            var query_leave             = from a in db.jiaban
                                          where (a.starttime <= dateToday && a.endtime >= dateToday) && a.approve == 4
                                          select a;
            if (query_leave.Count() != 0)
            {
                foreach (var work in query_leave)
                {
                    if (work.starttime < dateToday && work.endtime > dateToday)     //中间日期
                    {
                        morning += work.name + ";";
                        noon    += work.name + ";";
                    }
                    else if (work.starttime == dateToday && work.endtime != dateToday) //正好开始日期
                    {
                        if (work.startshift == "上午")
                        {
                            morning += work.name + ";";
                            noon    += work.name + ";";
                        }
                        else
                        {
                            noon += work.name + ";";
                        }
                    }
                    else if (work.endtime == dateToday && work.starttime != dateToday)  //正好结束日期
                    {
                        if (work.endshift == "下午")
                        {
                            morning += work.name + ";";
                            noon    += work.name + ";";
                        }
                        else
                        {
                            morning += work.name + ";";
                        }
                    }
                    else if (work.endtime == dateToday && work.starttime == dateToday)  //正好当天
                    {
                        if (work.startshift == "上午")
                        {
                            morning += work.name + ";";
                            if (work.endshift == "下午")
                            {
                                noon += work.name + ";";
                            }
                        }
                        else
                        {
                            noon += work.name + ";";
                        }
                    }
                }
            }
            e.Cell.Text = "<div style = 'font-size:22px;" + (e.Day.Date.Day == DateTime.Now.Day ? "background-color:#C6E7FF; color:#0B67A9'>" : "'>") + e.Day.Date.Day + "</br>"
                          + "<div style='font-size:12px; color:#676767;'>上午:"
                          + morning + "</br >下午:" + noon + "</div></div>";
        }
    }