示例#1
0
        /// <summary>
        /// 提交请假
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            if (!checkName())
            {
                return;
            }
            if (tbName.Text.Trim() == "")
            {
                return;
            }
            startDateTime = new DateTime(_start_year, _start_month, _start_day, _start_hour, _start_minute, _start_second);
            endDateTime   = new DateTime(_end_year, _end_month, _end_day, _end_hour, _end_minute, _end_second);
            if (startDateTime >= endDateTime)
            {
                ShowResult.show(lblResult, "结束时间需比起始时间大!", false);
                timerClsResult.Enabled = true;
                return;
            }
            string startTime = startDateTime.ToString("yyyy-MM-dd HH:mm:ss");
            string endTime   = endDateTime.ToString("yyyy-MM-dd HH:mm:ss");

            a_F_L_H = new ASK_For_Leave_Helper(tbName.Text.Trim(), startTime, endTime, tbNO.Text.Trim());
            //先判断是否有日期范围的假条
            if (a_F_L_H.ifExistsAtRange())
            {
                ShowResult.show(lblResult, "已存在该日期范围的假条!", false);
                timerClsResult.Enabled = true;
                return;
            }
            if (a_F_L_H.ifExistsVacationAtRange())
            {
                ShowResult.show(lblResult, "所设定的范围,涵盖公司休假日,请分段请假!", false);
                timerClsResult.Enabled = true;
                return;
            }
            a_F_L_H.save();
            tbNO.Text           = ASK_For_Leave_Helper.getLastedNO();
            this.dgv.DataSource = ASK_For_Leave_Helper.getAllVacationList();
            DGVHelper.AutoSizeForDGV(dgv);
        }
        /// <summary>
        /// 提交请假
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            if (!checkName())
            {
                MessageBox.Show(cbName.Text.Trim() + ": 没有在近5个月以内的考勤系统人员名单中。请用备用方案请假!", "提示!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            if (cbName.Text.Trim() == "")
            {
                return;
            }
            if (cbTimeSection.Text.Trim() == "")
            {
                return;
            }
            //startDateTime = new DateTime(_year, _month,_day,_start_hour,_start_minute,_start_second);
            //endDateTime = new DateTime(_year, _month, _day, _end_hour, _end_minute, _end_second);

            /*if (startDateTime >= endDateTime) {
             *  ShowResult.show(lblResult, "结束时间需比起始时间大!", false);
             *  timerClsResult.Enabled = true;
             *  return;
             * }
             */
            //string startTime = startDateTime.ToString("yyyy-MM-dd HH:mm:ss");
            //string endTime = endDateTime.ToString("yyyy-MM-dd HH:mm:ss");
            startTimeStr = string.Format(@"{0}-{1}-{2} {3}",
                                         dtPicker.Value.Year.ToString(),
                                         dtPicker.Value.Month.ToString(),
                                         dtPicker.Value.Day.ToString(),
                                         cbTimeSection.Text.ToString().Split('-')[0].Trim().ToString());
            endTimeStr = string.Format(@"{0}-{1}-{2} {3}",
                                       dtPicker.Value.Year.ToString(),
                                       dtPicker.Value.Month.ToString(),
                                       dtPicker.Value.Day.ToString(),
                                       cbTimeSection.Text.ToString().Split('-')[1].Trim().ToString());
            a_F_L_H = new ASK_For_Leave_Helper(cbName.Text.Trim(), startTimeStr, endTimeStr, "");
            //先判断是否有日期范围的假条
            if (a_F_L_H.ifExistsAtRange())
            {
                ShowResult.show(lblResult, "已存在该日期范围的假条!", false);
                timerClsResult.Enabled = true;
                return;
            }
            //判断是否设定了加班日
            if (!ifConfigRestDay(year_and_month_str))
            {
                ShowResult.show(lblResult, "请先设定加班日!", false);
                timerClsResult.Enabled = true;
                return;
            }
            if (ifTheRestDay(year_and_month_day_str))
            {
                ShowResult.show(lblResult, year_and_month_day_str + " :为休息日!", false);
                timerClsResult.Enabled = true;
                return;
            }
            //a_F_L_H.save();
            //tbNO.Text = ASK_For_Leave_Helper.getLastedNO();
            string sqlStr = string.Format(@"insert into Ask_For_Leave(
                                              job_number,
                                                name,
                                                leave_date,
                                              leave_start_time, 
                                              leave_end_time
                                      ) values(
                                        '{0}',
                                        '{1}',
                                        to_date('{2}','yyyy-MM-dd'),
                                        to_date('{3}','yyyy-MM-dd HH24:MI'),
                                        to_date('{4}','yyyy-MM-dd HH24:MI')
                                      )",
                                          cbName.SelectedValue.ToString(),
                                          cbName.Text.Trim(),
                                          year_and_month_day_str,
                                          startTimeStr,
                                          endTimeStr
                                          );;

            OracleDaoHelper.executeSQL(sqlStr);
            this.dgv.DataSource = ASK_For_Leave_Helper.getAllVacationListByNameAndDate(cbName.Text.Trim());
            DGVHelper.AutoSizeForDGV(dgv);
            cbTimeSection.SelectedIndex = -1;
        }