同一天有重复请假

    #region 2016.10.20  新增,判断同一天不要重复请假

           DateTime  fromdate = Convert.ToDateTime(txt_startdate.Text + " " + ddl_starttime.SelectedValue);
           DateTime todate = Convert.ToDateTime(txt_enddate.Text + " " + ddl_endtime.SelectedValue);
           //判断数据库里有没有此记录
           // process: 1表示正常 2,4表示取消(其中2表示用户自己取消,4表示管理员取消) 3,5表示更新,其中3,5为预留功能,请假系统不支持更新,所以process不可能是3,5 。
           // auditstatus审批:1表示通过 0表示等待审批 1表示拒绝, -2表示取消

            //查询数据库里,查询日期有没有冲突,查询条件是只查询正常的和 待审批,审批通过的
           // 所以,SQL增加限制为 ...  and  (process=1) and ( auditstatus=0 or auditstatus=1 ) 

           string sql = " select count(*) from appform_leavelists where NOT ((todate <= '" + fromdate + "') OR (fromdate >= '" + todate + "' )) and  (process=1) and ( auditstatus=0 or auditstatus=1 )  and staffcode='"+txt_staffcode.Text+"'   ";
           int count = int.Parse(DBHelper.Instance.ExeScalar(sql).ToString());

           if (count > 0)
           {
               Helper.Result(this, "同一天有重复请假");
               return;
           }


            #endregion

 

posted @ 2016-12-06 12:29  启明星工作室  阅读(270)  评论(0编辑  收藏  举报