Пример #1
0
        public static bool isPasswordRight(string userName, string password, string products_Name)
        {
            string sqlStr = String.Format(@"SELECT 1 FROM USER_INFO WHERE UPPER(User_Name) = UPPER('{0}')
                                                AND Password = '******' AND Product_Name = '{2}'", userName, password, products_Name);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count > 0 ? true : false);
        }
Пример #2
0
        public static void read(PictureBox pictureBox)
        {
            //  strid 主键字段名  strzp 照片字段名  strtb 数据库表名  strpath  存放照片的本地路径
            byte[]           img    = new byte[0];
            string           sqlStr = string.Format(@"SELECT id,picture FROM Picture_Test where id = 1");
            OracleConnection conn   = new OracleConnection(OracleDaoHelper.conn_str);
            OracleDataReader rs     = OracleDaoHelper.getDR(sqlStr, out conn);

            while (rs.Read())
            {
                string idStr = rs["id"].ToString();

                /*
                 * string idStr = rs["id"].ToString();
                 * //img = (byte[])(rs["zp"]);
                 * img = System.Text.Encoding.GetEncoding(-0).GetBytes(rs["zp"].ToString());
                 * System.IO.File.WriteAllBytes("C:\\" + idStr + ".jpg", img);
                 */
                if (rs["picture"] != DBNull.Value)
                {                                                        //照片字段里有值才能进到方法体显示图片,否则清空pb{
                    MemoryStream ms        = new MemoryStream((byte[])rs["picture"]);
                    Image        imageBlob = Image.FromStream(ms, true); //用流创建Image
                    pictureBox.Image = imageBlob;
                    pictureBox.Image.Save("E:\\1.jpg", pictureBox.Image.RawFormat);
                }
                else  //照片字段里没值,清空pb
                {
                    pictureBox.Image = null;
                }
            }
            rs.Close();
            rs.Dispose();
            conn.Close();
            conn.Dispose();
        }
        private void cbName_TextChanged(object sender, EventArgs e)
        {
            //获取姓名。
            string name = cbName.Text.Trim();

            if (name.Length == 0)
            {
                return;
            }
            if (name.Length > 1)
            {
                return;
            }
            string strFirstIndexOfName = name.Substring(0, 1);
            string sqlStr = string.Format(@"select distinct ar.name as name
                                                from attendance_record ar
                                                where ar.name like '{0}%'
                                                and trunc(ar.fingerprint_date,'MM') >= ADD_MONTHS(trunc(sysdate,'MM'),-2)",
                                          strFirstIndexOfName);

            System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
            cbName.DataSource      = null;
            this.cbName.DataSource = dt;
            cbName.DisplayMember   = "name";
            cbName.ValueMember     = "name";
        }
Пример #4
0
        /// <summary>
        /// 获取汉字相同的记录的组数。
        /// </summary>
        /// <returns></returns>
        private int getAmountOfGroupOfSameName()
        {
            string sqlStr = string.Format(@"SELECT ""姓名""
                                            FROM
                                            (
                                                select distinct
                                                                AR_Temp.Job_Number AS ""工号"",
                                                                AR_Temp.name AS ""姓名"",
                                                                AR_Temp.Attendance_Machine_Flag AS ""卡机编号"",
                                                                AR_Temp.Row_Index AS ""行号"",
                                                                AR_Temp.Record_Time  AS ""记录时间""
                                                from AR_Temp, (
                                                               select job_number,
                                                                        name,
                                                                        attendance_machine_flag,
                                                                        row_index,
                                                                        record_time
                                                               from AR_Temp
                                                 ) AR_T
                                                WHERE AR_Temp.name = AR_T.Name
                                                AND(
                                                      (AR_Temp.Attendance_Machine_Flag = AR_T.attendance_machine_flag
                                                      AND AR_Temp.Job_Number != AR_T.job_number)
                                                      OR(
                                                         AR_Temp.Attendance_Machine_Flag != AR_T.attendance_machine_flag
                                                      )
                                                )
                                            )   T
                                            group by ""姓名""");

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count);
        }
        private System.Data.DataTable getSameNameInfo()
        {
            string sqlStr = string.Format(@"select distinct 
                                                            AR_Temp.Job_Number AS ""工号"",
                                                            AR_Temp.name AS ""姓名"",
                                                            AR_Temp.Attendance_Machine_Flag AS ""卡机编号"",
                                                            AR_Temp.Row_Index AS ""行号"",
                                                            AR_Temp.Record_Time  AS ""记录时间""
                                            from AR_Temp, (
                                                           select job_number,
                                                                    name,
                                                                    attendance_machine_flag,
                                                                    row_index,
                                                                    record_time
                                                           from AR_Temp
                                             ) AR_T
                                            WHERE AR_Temp.name = AR_T.Name
                                            AND(
                                                  (AR_Temp.Attendance_Machine_Flag = AR_T.attendance_machine_flag
                                                  AND AR_Temp.Job_Number != AR_T.job_number)
                                                  OR(
                                                     AR_Temp.Attendance_Machine_Flag != AR_T.attendance_machine_flag
                                                  )
                                            )
                                            order by NLSSORT(""姓名"", 'NLS_SORT= SCHINESE_PINYIN_M')");

            System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
            this.dgv_same_name.DataSource = dt;
            DGVHelper.AutoSizeForDGV(dgv_same_name);
            return(dt);
        }
Пример #6
0
        /// <summary>
        /// 按日期范围查询考勤记录。
        /// </summary>
        /// <param name="startDateStr"></param>
        /// <param name="endDateStr"></param>
        /// <returns></returns>
        public System.Data.DataTable getARByRange(string startDateStr, string endDateStr)
        {
            String sqlStr = String.Format(@"SELECT 
                                              start_date AS ""起始日期"", 
                                              end_date AS ""终止日期"", 
                                              tabulation_time AS ""制表日期"", 
                                              fingerprint_date AS ""指纹日期"", 
                                              dept AS ""部门"",
                                              JOB_NUMBER AS ""工号"", 
                                              name AS ""姓名"", 
                                              SUBSTR(TO_CHAR(fpt_first_time,'yyyy-MM-dd HH24:MI:SS'),12,5) AS ""上班时间点"", 
                                              SUBSTR(TO_CHAR(fpt_last_time,'yyyy-MM-dd HH24:MI:SS'),12,5) AS ""下班时间点"", 
                                              sheet_name As ""表格名称"", 
                                              reord_time AS ""记录时间"", 
                                              come_num AS ""出勤天数"",
                                              not_finger_print AS ""未打卡"", 
                                              delay_time AS ""延点"", 
                                              come_late_num AS ""迟到次数"",
                                              leave_early_num AS ""早退次数"", 
                                              dinner_subsidy AS ""餐补"", 
                                              random_str  AS ""随机字符串""
                              FROM Attendance_Record
                              WHERE fingerprint_date between  TO_DATE('{0}','yyyy-MM-dd') and TO_DATE('{1}','yyyy-MM-dd')
                              OrDER bY 
                                        JOB_NUMBER ASC,
                                        fingerprint_date ASC
                                         ", startDateStr, endDateStr);

            System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
            return(dt);
        }
        private System.Data.DataTable getAR(string random_Str)
        {
            String sqlStr = String.Format(@"SELECT 
                                     start_date; 
                                      end_date; 
                                      tabulation_time; 
                                      fingerprint_date; 
                                      dept;
                                      job_number; 
                                      name; 
                                      sheet_name; 
                                      fpt_first_time; 
                                      fpt_last_time; 
                                      seq; 
                                      reord_time; 
                                      not_finger_print; 
                                      delay_time; 
                                      come_late;
                                      leave_early; 
                                      dinner_subsidy; 
                                      random_str 
                              FROM Attendance_Record
                              WHERE Random_Str= '{0}'
                              OrDER bY 
                                        FINGERPRINT_DATE DESC;
                                         Dept DESC;
                                        JOB_NUMBER DESC
                                         ", random_Str);

            System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
            return(dt);
        }
Пример #8
0
        public bool updateTheRecord()
        {
            string sqlStr_update_FPT_First_Time = string.Format(@"UPDATE Attendance_Record
                                                SET FPT_FIRST_TIME = to_date('{2}','yyyy-MM-dd HH24:MI:SS'),
                                                        FILL_UP_REMARK = FILL_UP_REMARK || '   '|| '{3}' || '   '|| to_char(sysdate,'yyyy-MM-dd HH24:MI:SS') ||';'
                                                 WHERE NAME = '{0}'
                                                    AND TRUNC(FINGERPRINT_DATE,'DD')= TO_DATE('{1}','yyyy-MM-dd')",
                                                                this._name,
                                                                this._day,
                                                                this._day + " " + this._time,
                                                                "已补上班卡");
            string sqlStr_update_FPT_Last_Time = string.Format(@"UPDATE Attendance_Record
                                                SET FPT_LAST_TIME = to_date('{2}','yyyy-MM-dd HH24:MI:SS'),
                                                    FILL_UP_REMARK = FILL_UP_REMARK || '   '|| '{3}'|| '   '|| to_char(sysdate,'yyyy-MM-dd HH24:MI:SS') ||';'
                                                 WHERE NAME = '{0}'
                                                    AND TRUNC(FINGERPRINT_DATE,'DD')= TO_DATE('{1}','yyyy-MM-dd')",
                                                               this._name,
                                                               this._day,
                                                               this._day + " " + this._time,
                                                               "已补下班卡");

            if (!ifNotHaveRecordOfAfternoon() && !ifNotHaveRecordOfMorning())
            {
                System.Windows.Forms.MessageBox.Show(this._day + ": 有出勤记录,无需补卡!", "提示:", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information);
                return(false);
            }
            if (ifNotHaveRecordOfMorning() && !ifNotHaveRecordOfAfternoon())
            {
                if (!ifTheTimeEarlierThanLastTime())
                {
                    System.Windows.Forms.MessageBox.Show("所补上班时间: " + this._day + " " + this._time + " 必须 <= " + new V_AR(this._name, this._day).getLastTime(), "提示:", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information);
                    return(false);
                }
                OracleDaoHelper.executeSQL(sqlStr_update_FPT_First_Time);
                return(true);
            }

            if (!ifNotHaveRecordOfMorning() && ifNotHaveRecordOfAfternoon())
            {
                if (!ifTheTimeLaterThanFirstTime())
                {
                    System.Windows.Forms.MessageBox.Show("所补下班时间:" + this._day + " " + this._time + " 必须 >= " + new V_AR(this._name, this._day).getFirstTime(), "提示:", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information);
                    return(false);
                }
                OracleDaoHelper.executeSQL(sqlStr_update_FPT_Last_Time);
                return(true);
            }
            if (ifNotHaveRecordOfMorning() && ifNotHaveRecordOfAfternoon())
            {
                if (ifMorning())
                {
                    OracleDaoHelper.executeSQL(sqlStr_update_FPT_First_Time);
                    return(true);
                }
                OracleDaoHelper.executeSQL(sqlStr_update_FPT_Last_Time);
                return(true);
            }
            return(false);
        }
Пример #9
0
        private void FrmRestDay_justConfiguration_Load(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(_year_and_month))
            {
                return;
            }

            /*
             * string procedureName = "PKG_Rest_Day.Generate_Rest_Day";
             *
             * if (oH == null)
             * {
             *  oH = OracleHelper.getBaseDao();
             * }
             * OracleParameter param_Name = new OracleParameter("v_Name", OracleDbType.Varchar2, ParameterDirection.Input);
             * OracleParameter param_YearAndMonth = new OracleParameter("v_yearAndMonth", OracleDbType.NVarchar2, ParameterDirection.Input);
             * OracleParameter param_restDay_cur = new OracleParameter("v_cur", OracleDbType.RefCursor, ParameterDirection.ReturnValue);
             * OracleParameter[] parameters = new OracleParameter[3] { param_restDay_cur, param_Name, param_YearAndMonth };
             * parameters[1].Value = "everybody";
             * parameters[2].Value = _year_and_month;
             * DataTable dt = oH.getDT(procedureName, parameters);
             * this.dgv.DataSource = null;
             * this.dgv.DataSource = null;
             * this.dgv.DataSource = dt;
             * DGVHelper.AutoSizeForDGV(dgv);
             */
            //先获取本月最后一天
            int       lastDay = 0;
            string    sqlStr  = string.Format(@"select to_char(last_day(to_date('{0}','yyyy-MM')),'dd') as last_day
                                            from dual", _year_and_month);
            DataTable dt      = OracleDaoHelper.getDTBySql(sqlStr);

            lastDay = int.Parse(dt.Rows[0]["last_day"].ToString());

            for (int i = 1; i <= lastDay; i++)
            {
                string year_and_month_str = _year_and_month + "-" + i.ToString();
                sqlStr = string.Format(@"SELECT TO_Char(to_date('{0}','yyyy-MM-dd'),'day') the_day
                                            FROM DUAL
                                            ", year_and_month_str);
                dt     = OracleDaoHelper.getDTBySql(sqlStr);
                if ("sunday".Equals(dt.Rows[0]["the_day"].ToString().Trim()))
                {
                    sqlStr = string.Format(@"INSERT INTO Rest_Day(name,rest_day,update_time)values('everybody',to_date('{0}','yyyy-MM-dd'),sysdate)",
                                           year_and_month_str);
                    OracleDaoHelper.executeSQL(sqlStr);
                }
            }
            //获取该月得所有休息日
            sqlStr = string.Format(@"SELECT name as ""姓名"",
                                            rest_day as ""休息日"",
                                            update_time as ""更新时间""
                                    FROM Rest_day
                                    WHERE trunc(rest_day,'MM') = to_date('{0}','yyyy-MM')",
                                   _year_and_month);
            dt = OracleDaoHelper.getDTBySql(sqlStr);
            this.dgv.DataSource = dt;
            DGVHelper.AutoSizeForDGV(dgv);
        }
        /// <summary>
        /// 判断 给定的日期字符串,在Rest_day中是否为休息日。
        /// </summary>
        /// <param name="year_month_day"></param>
        /// <returns></returns>
        public static bool ifDayOfRest(string year_month_day)
        {
            string sqlStr = string.Format(@"SELECT 1 
                                            FROM Rest_Day RD
                                            WHERE rest_day = TO_DATE('{0}','yyyy-MM-dd')", year_month_day);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count > 0 ? true : false);
        }
        private bool ifTheRestDay(string year_and_month_day_str)
        {
            string sqlStr = string.Format(@"SELECT 1 
                                                FROM REST_DAY
                                                WHERE TRUNC(rest_day,'dd') = to_date('{0}','yyyy-MM-dd')", year_and_month_day_str);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count > 0 ? true : false);
        }
Пример #12
0
        private bool ifConfigRestDay(string year_and_month_str)
        {
            string    sqlStr = string.Format(@"SELECT 1 
                                            FROM Rest_Day
                                            WHERE trunc(rest_day,'MM') = to_date('{0}','yyyy-MM')", year_and_month_str);
            DataTable dt     = OracleDaoHelper.getDTBySql(sqlStr);

            return(dt.Rows.Count > 0 ? true : false);
        }
Пример #13
0
        internal static void delByNameAndMonth(string name, string year_month_day_str)
        {
            string sqlStr = string.Format(@"DELETE 
                                            FROM ASK_FOR_LEAVE 
                                            WHERE Name = '{0}' 
                                            AND Leave_date = to_date('{1}','yyyy-MM-dd')", name, year_month_day_str);

            OracleDaoHelper.executeSQL(sqlStr);
        }
Пример #14
0
        public static bool isPasswordRight(string userName, string password)
        {
            string sqlStr   = String.Format(@"SELECT 1 FROM USER_INFO WHERE User_Name = '{0}'
                                                AND Password = '******'", userName, password);
            int    rows_num = 0;

            rows_num = OracleDaoHelper.getDTBySql(sqlStr).Rows.Count;
            return(rows_num > 0 ? true : false);
        }
Пример #15
0
        /// <summary>
        ///
        /// Attendance_Record_Detail
        /// </summary>
        /// <param name="attendanceMachineFlag"></param>
        /// <param name="year_and_month_str"></param>
        /// <returns></returns>
        ///

        /// <summary>
        /// 删除本月的考勤记录
        /// </summary>
        /// <param name="year_and_month_str"></param>
        private void delARDetailInfoByYearAndMonth(string year_and_month_str)
        {
            string sqlStr = string.Format(@"delete 
                                            from Attendance_record_Detail 
                                            where trunc(finger_print_date,'MM') = to_date('{0}','yyyy-MM')",
                                          year_and_month_str);

            OracleDaoHelper.executeSQL(sqlStr);
        }
 private void btnSwitch_Click(object sender, EventArgs e)
 {
     if ("查看同名记录".Equals(btnSwitch.Text.Trim()))
     {
         btnSwitch.Text                  = "查看拼音相同的记录";
         dgv_same_name.Visible           = true;
         dgv_same_pinyin_of_name.Visible = false;
         string sqlStr            = string.Format(@"select distinct 
                                                     AR_Temp.Job_Number AS ""工号"",
                                                     AR_Temp.name AS ""姓名"",
                                                     AR_Temp.Attendance_Machine_Flag AS ""卡机编号"",
                                                     AR_Temp.Row_Index AS ""行号"",
                                                     AR_Temp.Record_Time  AS ""记录时间""
                                     from AR_Temp, (
                                                    select job_number,
                                                             name,
                                                             attendance_machine_flag,
                                                             row_index,
                                                             record_time
                                                    from AR_Temp
                                      ) AR_T
                                     WHERE AR_Temp.name = AR_T.Name
                                     AND(
                                           (AR_Temp.Attendance_Machine_Flag = AR_T.attendance_machine_flag
                                           AND AR_Temp.Job_Number != AR_T.job_number)
                                           OR(
                                              AR_Temp.Attendance_Machine_Flag != AR_T.attendance_machine_flag
                                           )
                                     )
                                     order by NLSSORT(""姓名"", 'NLS_SORT= SCHINESE_PINYIN_M')");
         System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
         this.dgv_same_name.DataSource = dt;
         DGVHelper.AutoSizeForDGV(dgv_same_name);
     }
     else
     {
         btnSwitch.Text = "查看同名记录";
         string sqlStr            = string.Format(@"select distinct 
                                                         AR_Temp.Job_Number AS ""工号"",
                                                         AR_Temp.name AS ""姓名"",
                                                         AR_Temp.Attendance_Machine_Flag AS ""卡机编号"",
                                                         AR_Temp.Row_Index AS ""行号"",
                                                         AR_Temp.Record_Time  AS ""记录时间""
                                         from AR_Temp, (
                                                       select distinct name
                                                       from AR_Temp
                                         ) AR_T
                                         WHERE AR_Temp.name ! = AR_T.Name
                                         AND gethzpy.GetHzFullPY(AR_Temp.name) = gethzpy.GetHzFullPY(AR_T.name)
                                         order by NLSSORT(""姓名"", 'NLS_SORT= SCHINESE_PINYIN_M')");
         System.Data.DataTable dt = OracleDaoHelper.getDTBySql(sqlStr);
         this.dgv_same_pinyin_of_name.DataSource = dt;
         dgv_same_pinyin_of_name.Visible         = true;
         DGVHelper.AutoSizeForDGV(dgv_same_pinyin_of_name);
         dgv_same_name.Visible = false;
     }
 }
        /// <summary>
        /// 获取指定月份:为休息日的  dd部分。
        /// </summary>
        /// <param name="year_and_month_str"></param>
        /// <returns></returns>
        public static DataTable getDaysOfRestDay(string year_and_month_str)
        {
            string sqlStr = string.Format(@"SELECT TO_NUMBER(TO_CHAR(rest_day,'dd')) AS dd 
                                                FROM Rest_Day RD
                                                WHERE trunc(rest_day,'MM') = to_date('{0}','yyyy-MM')",
                                          year_and_month_str);

            return(OracleDaoHelper.getDTBySql(sqlStr));
        }
        /// <summary>
        /// 本月是否已经设定了加班日。
        /// </summary>
        /// <returns></returns>
        public bool ifHaveTheDayOfOvertime()
        {
            string sqlStr = string.Format(@"select 1 
                                            from Rest_Day
                                            where name = '{0}'
                                            and trunc(rest_day,'MM') = to_date('{1}','yyyy-MM')",
                                          _name, _the_day_of_overtime);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count > 0 ? true : false);
        }
        /// <summary>
        /// 删除某天的休息日。
        /// </summary>
        public void delRestDay()
        {
            string sqlStr = string.Format(@"DELETE REST_DAY 
                                            WHERE NAME = '{0}'
                                            AND TRUNC(Rest_Day,'DD') = to_date('{1}','yyyy-MM-dd')",
                                          _name,
                                          _the_day_of_overtime);

            OracleDaoHelper.executeSQL(sqlStr);
        }
        public static int getARNumByYearAndMonth(string Year_And_Month_Str)
        {
            string sqlStr = string.Format(@"SELECT 1
                                              FROM Attendance_Record AR
                                              WHERE  TRUNC(AR.Fingerprint_Date,'MM') = TO_DATE('{0}','YYYY-MM')
                                                    GROUP BY AR.JOB_NUMBER",
                                          Year_And_Month_Str);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows.Count);
        }
Пример #21
0
        /// <summary>
        /// 删除制定日期的工作计划。
        /// </summary>
        /// <returns></returns>
        public int delWS()
        {
            string sqlStr = String.Format(@"
                                            delete
                                            from Work_Schedule
                                            where trunc(work_and_rest_date,'MM') = To_DATE('{0}','yyyy-MM')",
                                          V_Work_Schedule._YearAndMonthStr);

            return(OracleDaoHelper.executeSQL(sqlStr));
        }
Пример #22
0
        public int getDeptNum()
        {
            string sqlStr = String.Format(@"select DISTINCT(Dept) Dept 
                                            from v_Work_Schedule
                                           where trunc(work_and_rest_date,'MM') = To_DATE('{0}','yyyy-MM')
                                            order by dept asc", V_Work_Schedule._YearAndMonthStr);

            System.Data.DataTable dt = (System.Data.DataTable)(OracleDaoHelper.getDTBySql(sqlStr));
            return(dt.Rows.Count);
        }
Пример #23
0
        public static void getPictureByProductName(string productName, PictureBox pictureBox)
        {
            Image imageBlob = null;

            //  strid 主键字段名  strzp 照片字段名  strtb 数据库表名  strpath  存放照片的本地路径
            byte[]           img    = new byte[0];
            string           sqlStr = string.Format(@"SELECT picture FROM Products_Picture where product_name = '{0}'", productName);
            OracleConnection conn   = new OracleConnection(OracleDaoHelper.conn_str);
            OracleDataReader rs     = OracleDaoHelper.getDR(sqlStr, out conn);

            if (!rs.HasRows)
            {
                pictureBox.Image = null;
                rs.Close();
                rs.Dispose();
                conn.Close();
                conn.Dispose();
                return;
            }
            while (rs.Read())
            {
                /*
                 * string idStr = rs["id"].ToString();
                 * //img = (byte[])(rs["zp"]);
                 * img = System.Text.Encoding.GetEncoding(-0).GetBytes(rs["zp"].ToString());
                 * System.IO.File.WriteAllBytes("C:\\" + idStr + ".jpg", img);
                 */
                if (rs["picture"] != DBNull.Value)
                {                                                  //照片字段里有值才能进到方法体显示图片,否则清空pb{
                    MemoryStream ms = new MemoryStream((byte[])rs["picture"]);
                    imageBlob        = Image.FromStream(ms, true); //用流创建Image
                    pictureBox.Image = imageBlob;
                    try
                    {
                        pictureBox.Image.Save(string.Format(@"{0}\{1}.jpg",
                                                            Application.StartupPath + "\\pictures",
                                                            StringHelper.removeBlank(productName)
                                                            ),
                                              pictureBox.Image.RawFormat);;
                    }
                    catch (Exception ex) {
                        MessageBox.Show(ex.ToString());
                    }
                }
                else
                {//照片字段里没值,清空pb
                    pictureBox.Image = null;
                }
            }
            rs.Close();
            rs.Dispose();
            conn.Close();
            conn.Dispose();
        }
Пример #24
0
        /*
         #region 获取该日期范围内有多少日的考勤记录。
         * /// <summary>
         * /// 获取该日期范围内有多少日的考勤记录
         * /// </summary>
         * /// <param name="Year_And_Month_Str"></param>
         * /// <returns></returns>
         * public static int get_AR_Days_Num(string Year_And_Month_Str)
         * {
         *  string sqlStr = string.Format(@"
         *                                  SELECT COUNT(1)
         *                                  FROM
         *                                  (
         *                                     select AR.Fingerprint_Date
         *                                     from Attendance_Record AR
         *                                     where TRUNC(AR.Fingerprint_Date,'MM') = To_DATE('{0}','yyyy-MM')
         *                                     GROUP BY AR.Fingerprint_Date
         *                                  ) TEMP",
         *                             Year_And_Month_Str);
         *  int result = 0;
         *  int.TryParse(OracleDaoHelper.getDTBySql(sqlStr).Rows[0][0].ToString(), out result);
         *  return result;
         * }
         #endregion
         */
        #region 获取该日期范围内有多少日的考勤记录。
        /// <summary>
        /// 获取该日期范围内有多少日的考勤记录
        /// </summary>
        /// <param name="Year_And_Month_Str"></param>
        /// <returns></returns>
        public static int get_AR_Days_Num(string Year_And_Month_Str)
        {
            string sqlStr = string.Format(@"select count(distinct(ARFinal.finger_print_date))
                                               from Attendance_Record_Final ARFinal
                                               where TRUNC(ARFinal.finger_print_date,'MM') = To_DATE('{0}','yyyy-MM')",
                                          Year_And_Month_Str);
            int result = 0;

            int.TryParse(OracleDaoHelper.getDTBySql(sqlStr).Rows[0][0].ToString(), out result);
            return(result);
        }
        /// <summary>
        /// 删除指定月份的 某个考勤机对应的纪录
        /// </summary>
        /// <param name="attendanceMachineFlag"></param>
        /// <param name="year_and_month_str"></param>
        private void delTheInfoOfTheSpecificeMachineAndYearAndMonth(int attendanceMachineFlag, string year_and_month_str)
        {
            string sqlStr = string.Format(@"delete 
                                            from Attendance_record 
                                            where substr(job_number,1,1) = '{0}'
                                            and trunc(start_date,'MM') = to_date('{1}','yyyy-MM')",
                                          attendanceMachineFlag,
                                          year_and_month_str);

            OracleDaoHelper.executeSQL(sqlStr);
        }
Пример #26
0
        public DataTable getARNameLastThreeMonth()
        {
            string sqlstr = string.Format(@"select distinct ar.name
                                            from attendance_record ar
                                            where ar.name like '{0}%'
                                            and ar.fingerprint_date >= trunc(add_months(sysdate,-2),'MM')
                                            ORDER BY NLSSORT(name, 'NLS_SORT = SCHINESE_PINYIN_M') asc"
                                          , this._name);

            return(OracleDaoHelper.getDTBySql(sqlstr));
        }
Пример #27
0
        /// <summary>
        /// 获取下班时间
        /// </summary>
        /// <returns></returns>
        public string getLastTime()
        {
            string sqlStr = string.Format(@"select to_char(fpt_last_time,'yyyy-MM-dd hh24:mi:ss')
                                            from Attendance_Record 
                                            where name = '{0}'
                                            and fingerprint_date = to_date('{1}','yyyy-MM-dd')",
                                          this._name,
                                          this._day);

            return(OracleDaoHelper.getDTBySql(sqlStr).Rows[0][0].ToString());
        }
Пример #28
0
        public int getAskForLeaveDays()
        {
            string sqlStr = String.Format(@"select(leave_end_Time - leave_start_time) * 24 leave_Hours
                                                    from Ask_For_Leave
                                                    where Job_Number = '{0}'
                                                    and trunc(leave_start_time, 'DD') = to_date('{1}', 'yyyy-MM-dd')",
                                          this.Job_number,
                                          this.Year_month_day);

            return(Int32.Parse(OracleDaoHelper.getDTBySql(sqlStr).Rows[0]["leave_Hours"].ToString()));
        }
        public static DataTable getAllRestDays()
        {
            string sqlStr = string.Format(@"select 
                                               Name AS ""姓名"",
                                               Rest_Day AS ""休息日"",
                                               UPDATE_Time AS ""更新日期""            
                                        from Rest_Day
                                        order by  ""更新日期"" desc,""休息日"" desc");

            return(OracleDaoHelper.getDTBySql(sqlStr));
        }
        /// <summary>
        /// 获取该考勤机在后台已经存在的信息.
        /// </summary>
        /// <param name="attendanceMachineFlag"></param>
        /// <param name="year_and_month_str"></param>
        /// <returns></returns>
        private System.Data.DataTable  getSubmitInfoOfTheSpecificeMachineAndYearAndMonth(int attendanceMachineFlag, string year_and_month_str)
        {
            string sqlStr = string.Format(@"Select count(distinct job_number) as nums_of_staffs,
                                                    max(to_char(record_time,'yyyy-MM-dd HH24:MI:SS')) as latest_record_time
                                             from Attendance_Record
                                             where substr(job_number,1,1) = '{0}'
                                             and trunc(fingerprint_date,'MM') = to_date('{1}','yyyy-MM')",
                                          attendanceMachineFlag,
                                          year_and_month_str);

            return(OracleDaoHelper.getDTBySql(sqlStr));
        }