示例#1
0
        /// ----------------------------------------------------------------------------
        /// <summary>
        ///     T_勤怠にデータをセットする </summary>
        /// <param name="r">
        ///     ryowaDataSet.T_勤怠Row </param>
        /// <param name="c">
        ///     CSVデータ配列</param>
        /// <returns>
        ///     ryowaDataSet.T_勤怠Row</returns>
        /// ----------------------------------------------------------------------------
        private ryowaDataSet.T_勤怠Row setMasterRow(ryowaDataSet.T_勤怠Row r, string[] c)
        {
            r.日付    = DateTime.Parse(c[0]);
            r.社員ID  = Utility.StrtoInt(c[1]);
            r.工事ID  = Utility.StrtoInt(c[2]);
            r.出勤印   = Utility.StrtoInt(c[3]);
            r.出社時刻時 = c[4];
            r.出社時刻分 = c[5];
            r.開始時刻時 = c[6];
            r.開始時刻分 = c[7];
            r.終了時刻時 = c[8];
            r.終了時刻分 = c[9];
            r.退出時刻時 = c[10];
            r.退出時刻分 = c[11];
            r.休憩    = Utility.StrtoInt(c[12]);
            r.普通残業  = Utility.StrtoInt(c[13]);
            r.深夜残業  = Utility.StrtoInt(c[14]);
            r.休日出勤  = Utility.StrtoInt(c[15]);
            r.代休    = Utility.StrtoInt(c[16]);
            r.休日    = Utility.StrtoInt(c[17]);
            r.勤     = Utility.StrtoInt(c[18]);
            r.宿泊    = Utility.StrtoInt(c[19]);
            r.備考    = c[20];

            // ローカルでは特殊勤務チェックしないので更新対象外
            //r.除雪当番 = Utility.StrtoInt(c[21]);
            //r.特殊出勤 = Utility.StrtoInt(c[22]);
            //r.通し勤務 = Utility.StrtoInt(c[23]);
            //r.夜間手当 = Utility.StrtoInt(c[24]);
            //r.職務手当 = Utility.StrtoInt(c[25]);

            r.全走行    = Utility.StrtoInt(c[26]);
            r.通勤業務走行 = Utility.StrtoInt(c[27]);
            r.私用走行   = Utility.StrtoInt(c[28]);
            r.代休対象日  = c[29];

            //r.確認印 = Utility.StrtoInt(c[30]);// ローカルでは確認印チェックしないので更新対象外

            r.登録年月日    = DateTime.Parse(c[31]);
            r.登録ユーザーID = Utility.StrtoInt(c[32]);
            r.更新年月日    = DateTime.Parse(c[33]);
            r.更新ユーザーID = Utility.StrtoInt(c[34]);

            return(r);
        }
示例#2
0
        ///-----------------------------------------------------------------------------
        /// <summary>
        ///     勤務時間を取得する </summary>
        /// <param name="item">
        ///     ryowaDataSet.T_勤怠Row </param>
        /// <returns>
        ///     勤務時間・分</returns>
        ///-----------------------------------------------------------------------------
        public static double getWorkTime(ryowaDataSet.T_勤怠Row item)
        {
            int cSH = Utility.StrtoInt(item.開始時刻時);
            int cSM = Utility.StrtoInt(item.開始時刻分);
            int cEH = Utility.StrtoInt(item.終了時刻時);
            int cEM = Utility.StrtoInt(item.終了時刻分);

            if (cEH == 24)
            {
                cEH = 0;
            }

            DateTime stTM    = DateTime.Parse(cSH.ToString() + ":" + cSM.ToString());
            DateTime edTM    = DateTime.Parse(cEH.ToString() + ":" + cEM.ToString());
            double   spanMin = 0;
            bool     rtn     = false;

            int sTime = cSH * 100 + cSM;
            int eTime = cEH * 100 + cEM;

            // 勤務時間取得
            if (sTime >= eTime)
            {
                // 終了が翌日のとき
                spanMin += Utility.GetTimeSpan(stTM, edTM.AddDays(1)).TotalMinutes;
            }
            else
            {
                // 終了が当日のとき
                spanMin += Utility.GetTimeSpan(stTM, edTM).TotalMinutes;
            }

            // 休憩時間を差し引く
            int rTM = Properties.Settings.Default.restTime + item.休憩;

            if (spanMin > rTM)
            {
                spanMin -= rTM;
            }

            return(spanMin);
        }
示例#3
0
 /// ---------------------------------------------------------------
 /// <summary>
 ///     勤怠データ上書き </summary>
 /// <param name="c">
 ///     CSVデータ配列</param>
 /// ---------------------------------------------------------------
 private void sOverWriteMaster(string[] c)
 {
     ryowaDataSet.T_勤怠Row r = dts.T_勤怠.Single(a => a.日付 == DateTime.Parse(c[0]) && a.社員ID == Utility.StrtoInt(c[1]));
     setMasterRow(r, c);
 }
示例#4
0
 /// ---------------------------------------------------------------
 /// <summary>
 ///     勤怠データ追加 </summary>
 /// <param name="c">
 ///     CSVデータ配列</param>
 /// ---------------------------------------------------------------
 private void sAddMaster(string[] c)
 {
     ryowaDataSet.T_勤怠Row r = dts.T_勤怠.NewT_勤怠Row();
     dts.T_勤怠.AddT_勤怠Row(setMasterRow(r, c));
 }