protected void Page_Load(object sender, EventArgs e)
    {
        string html = "";
        int month = 0;
        int year = 0;
        int person_id = 0;
        SQLDB sql = new SQLDB();
        Date dt = new Date();
        MonthDB mdb = new MonthDB();

        if (Request.QueryString["month"] != null)
            month = Convert.ToInt32(Request.QueryString["month"]);

        if (Request.QueryString["year"] != null)
            year = Convert.ToInt32(Request.QueryString["year"]);

        if (Request.QueryString["id"] != null)
            person_id = Convert.ToInt32(Request.QueryString["id"]);

        Employee emp = sql.getEmployee(person_id);

        lbEmployeeName.Text = emp.FIO;
        lbPeriodName.Text = mdb.getMonthName(month).ToUpper() + " " + year.ToString();

        string start_period = dt.getDataToSAP(1, month, year);

        List<CheckedHours> hours = sql.getCheckedSchedule(start_period, person_id);

        if (hours.Count > 0)
        {
            html = @"<table cellpadding='0' cellspacing='0' class='main_table' width='270px'>
                            <tr style='background: url(App_Resources/header.bmp) repeat-x;' >
                                <td class='header_table' width='70px' style='border-left: solid 1px #999999; border-top: solid 1px #999999;' >Дата</td>
                                <td class='header_table' width='100px' style='border-top: solid 1px #999999;'>IT</td>
                                <td class='header_table' width='100px' style='border-top: solid 1px #999999;'>SAP</td>
                            </tr>";

            foreach (CheckedHours ch in hours)
            {
                html += "<tr><td width='70px' style='border-left: solid 1px #999999;'>" + ch.DayDate + "</td><td  width='100px'>" + ch.IT_Hours.ToString() + "</td><td  width='100px'>" + ch.SAP_Hours.ToString() + "</td><tr>";
            }

            html += "</table>";
        }
        else
        {
            string msg = "";
            if (dt.isOpen(month, year))
                msg = "Введенный график совпадает с графиком SAP";
            else
                msg = "Нет данных";

            html = "<div class='check_personal' style='width: 270px; height:50px; color: DarkRed;'>" + msg + "</div>";
        }
        lbTable.Text = html;
    }
Beispiel #2
0
    // формируем отчетные периоды в формате - название мес¤ца + год (отображаетс¤ в выпадающем списке)
    public List<Period> getPeriodsToDropDownList()
    {
        MonthDB monthDB = new MonthDB();
        PeriodDB periodDB = new PeriodDB();
        List<Period> periods = new List<Period>();

        int year = DateTime.Now.Year;
        int curMonth = DateTime.Now.Month;
        int furtherMonth = curMonth;
        int furtherYear = year;
        int day = DateTime.Now.Day;

        if (furtherMonth == 12)
        {
             furtherMonth = 1;
             furtherYear++;
        }
        else
             furtherMonth++;

        // если сегодн¤ первое число мес¤ца, то провер¤ем есть запись с новым периодом. ≈сли нет, то записываем новый период.
        if (!periodDB.isPeriodExists(furtherMonth, furtherYear))
             periodDB.insertNewPeriod(furtherMonth, monthDB.getMonthName(furtherMonth), furtherYear, 0);

        Period p3 = periodDB.getPeriod(furtherMonth, furtherYear);
        p3.MonthName = p3.MonthName + " " + p3.Year.ToString();
        periods.Add(p3);

        Period p1 = periodDB.getPeriod(curMonth, year);
        p1.MonthName = p1.MonthName + " " + p1.Year.ToString();
        periods.Add(p1);

        // если сейчас ¤нварь, то получаем данные за декабрь предыдущего года
        if (curMonth == 1)
        {
            year--;
            curMonth = 12;
        }
        else curMonth--;

        Period p2 = periodDB.getPeriod(curMonth, year);
        p2.MonthName = p2.MonthName + " " + p2.Year.ToString();
        periods.Add(p2);

        /*
        Period p4 = periodDB.getPeriod(5, 2009);
        p4.MonthName = p4MonthName + " " + p4.Year.ToString();
        periods.Add(p4);
        */

        return periods;
    }