示例#1
0
 //Отказать в отпуске
 protected void btReject_Click(object sender, EventArgs e)
 {
     try
     {
         if (DBConnection.idRecord != 0)
         {
             int            selectedRow  = gvVacation.SelectedRow.RowIndex;
             GridViewRow    rows         = gvVacation.SelectedRow;
             int            vacationDays = Convert.ToInt32(rows.Cells[9].Text.ToString());
             int            cardID       = Convert.ToInt32(rows.Cells[3].Text.ToString());
             int            cardDays     = Convert.ToInt32(rows.Cells[15].Text.ToString());
             int            daysAmount   = cardDays + vacationDays;
             DataProcedures procedures   = new DataProcedures();
             procedures.VacationList_Status_Update(DBConnection.idRecord, "Отклонен");
             procedures.Days_Amount_Update(daysAmount, cardID);
             ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Отпуск успешно отклонен.')", true);
             gvFill(QR);
             Cleaner();
             btConfirm.Visible     = false;
             btReject.Visible      = false;
             DBConnection.idRecord = 0;
         }
     }
     catch
     {
         ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Не удалось выполнить :(')", true);
     }
 }
示例#2
0
        protected void btDelete_Click(object sender, EventArgs e)
        {
            int days; //Дни для добавления к дням отпуска

            try
            {
                DataProcedures procedures = new DataProcedures();
                //Количество дней
                GridViewRow rows = gvVacation.SelectedRow;
                days  = Convert.ToInt32(rows.Cells[5].Text.ToString());
                days += Convert.ToInt32(lbldaysAvailable.Text);
                ddlType.SelectedValue = rows.Cells[1].Text.ToString();
                procedures.Days_Amount_Update(days, DBConnection.idUser);
                procedures.VacationList_Delete(DBConnection.idRecord);
                Cleaner();
                gvFill(QR);
                pageDataFill();
                Response.Redirect(Request.Url.AbsoluteUri);
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Запись успешно удалена.')", true);
            }
            catch
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Не удалось удалить запись :(')", true);
            }
        }
示例#3
0
        protected void btInsert_Click(object sender, EventArgs e)
        {
            string         selectedType = ddlType.SelectedItem.Text;
            DataProcedures procedures   = new DataProcedures();
            //Дата начала
            DateTime theDate   = DateTime.ParseExact(tbStartDate.Text, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture);
            string   startDate = theDate.ToString("dd.MM.yyyy");
            //Дата окончания
            DateTime theDate1 = DateTime.ParseExact(tbEndDate.Text, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture);
            string   endDate  = theDate1.ToString("dd.MM.yyyy");
            DateTime dateNow  = DateTime.UtcNow.Date;
            //Расчёт 2 недель
            TimeSpan weeks    = theDate - dateNow;
            double   twoWeeks = weeks.TotalDays;
            //Расчёт количества дней
            TimeSpan days       = theDate1 - theDate;
            double   daysAmount = days.TotalDays; //Кол-во дней

            //Первая дата > второй даты
            if (theDate > theDate1)
            {
                alert.Visible         = true;
                liCorrectDate.Visible = true;
            }
            else
            {
                liCorrectDate.Visible = false;
                //Проверка, что до отпуска >2 недель
                if (Convert.ToInt32(twoWeeks) < 14)
                {
                    alert.Visible           = true;
                    liIntervalError.Visible = true;
                }
                else
                {
                    liIntervalError.Visible = false;
                    //Проверка количетсва доступных дней
                    if (Convert.ToInt32(lbldaysAvailable.Text) < daysAmount)
                    {
                        alert.Visible             = true;
                        liDaysAmountError.Visible = true;
                    }
                    else
                    {
                        liDaysAmountError.Visible = false;
                        alert.Visible             = false;
                        try
                        {
                            int vacatinDays = Convert.ToInt32(lbldaysAvailable.Text) - Convert.ToInt32(daysAmount);
                            procedures.VacationList_Insert(startDate, endDate, dateNow.ToString(), "Ожидание", Convert.ToInt32(daysAmount), Convert.ToInt32(ddlType.SelectedValue), DBConnection.idUser);
                            procedures.Days_Amount_Update(vacatinDays, DBConnection.idUser);
                            Cleaner();
                            gvFill(QR);
                            pageDataFill();
                            Response.Redirect(Request.Url.AbsoluteUri);
                            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('" + selectedType + ", успешно добавлен. Ожидайте подтверждения отпуска руководителем.')", true);
                        }
                        catch
                        {
                            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Не удалось добавить запись :(')", true);
                        }
                    }
                }
            }
        }