Example #1
0
        ///-----------------------------------------------------------------------------
        /// <summary>
        ///     勤務時間を取得する </summary>
        /// <param name="item">
        ///     ryowaDataSet.T_勤怠Row </param>
        /// <returns>
        ///     勤務時間・分</returns>
        ///-----------------------------------------------------------------------------
        public static double getWorkTime(kintaiDataSet.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);
        }
Example #2
0
 ///------------------------------------------------------------------
 /// <summary>
 ///     データ登録 </summary>
 ///------------------------------------------------------------------
 private void dataAdd()
 {
     kintaiDataSet.T_勤怠Row s = dts.T_勤怠.NewT_勤怠Row();
     rowDataSet(s);
     dts.T_勤怠.AddT_勤怠Row(s);
 }
Example #3
0
        ///------------------------------------------------------------------
        /// <summary>
        ///     T_勤怠Rowにデータをセットします </summary>
        /// <param name="s">
        ///     kintaiDataSet.T_勤怠Row </param>
        ///------------------------------------------------------------------
        private void rowDataSet(kintaiDataSet.T_勤怠Row s)
        {
            s.日付   = _pDate;
            s.社員ID = _pNUm;
            s.工事ID = Utility.StrtoInt(cmbKouji.SelectedValue.ToString());

            if (rBtnWork.Checked)
            {
                s.出勤印 = global.flgOn;
            }
            else
            {
                s.出勤印 = global.flgOff;
            }

            if (rBtnWork.Checked || rBtnHolWork.Checked)
            {
                s.出社時刻時 = txtInH.Text;
                s.出社時刻分 = txtInM.Text;
                s.開始時刻時 = txtSH.Text;
                s.開始時刻分 = txtSM.Text;
                s.終了時刻時 = txtEH.Text;
                s.終了時刻分 = txtEM.Text;
                s.退出時刻時 = txtOutH.Text;
                s.退出時刻分 = txtOutM.Text;
                s.休憩    = Utility.StrtoInt(txtRH.Text) * 60 + Utility.StrtoInt(txtRM.Text);
                s.普通残業  = Utility.StrtoInt(txtZH.Text) * 60 + Utility.StrtoInt(txtZM.Text);
                s.深夜残業  = Utility.StrtoInt(txtSiH.Text) * 60 + Utility.StrtoInt(txtSiM.Text);
                s.早出残業  = Utility.StrtoInt(txtHH.Text) * 60 + Utility.StrtoInt(txtHM.Text);     // 2018/07/11
            }
            else
            {
                s.出社時刻時 = string.Empty;
                s.出社時刻分 = string.Empty;
                s.開始時刻時 = string.Empty;
                s.開始時刻分 = string.Empty;
                s.終了時刻時 = string.Empty;
                s.終了時刻分 = string.Empty;
                s.退出時刻時 = string.Empty;
                s.退出時刻分 = string.Empty;
                s.休憩    = global.flgOff;
                s.普通残業  = global.flgOff;
                s.深夜残業  = global.flgOff;
                s.早出残業  = global.flgOff;    // 2018/07/11
            }

            if (rBtnHolWork.Checked)
            {
                s.休日出勤 = global.flgOn;
            }
            else
            {
                s.休日出勤 = global.flgOff;
            }

            if (rBtnDaiOff.Checked)
            {
                s.代休 = global.flgOn;
            }
            else
            {
                s.代休 = global.flgOff;
            }

            if (rBtnOffDay.Checked)
            {
                s.休日 = global.flgOn;
            }
            else
            {
                s.休日 = global.flgOff;
            }

            if (rBtnYasumi.Checked)
            {
                s.勤 = global.flgOn;
            }
            else
            {
                s.勤 = global.flgOff;
            }

            if (chkStay.Checked)
            {
                s.宿泊 = global.flgOn;
            }
            else
            {
                s.宿泊 = global.flgOff;
            }

            s.備考 = txtMemo.Text.Replace(",", "");

            if (chkJyosetsu.Checked)
            {
                s.除雪当番 = global.flgOn;
            }
            else
            {
                s.除雪当番 = global.flgOff;
            }

            if (chkTokushu.Checked)
            {
                s.特殊出勤 = global.flgOn;
            }
            else
            {
                s.特殊出勤 = global.flgOff;
            }

            if (chkTooshi.Checked)
            {
                s.通し勤務 = global.flgOn;
            }
            else
            {
                s.通し勤務 = global.flgOff;
            }

            if (chkYakan.Checked)
            {
                s.夜間手当 = global.flgOn;
            }
            else
            {
                s.夜間手当 = global.flgOff;
            }

            if (chkShokumu.Checked)
            {
                s.職務手当 = global.flgOn;
            }
            else
            {
                s.職務手当 = global.flgOff;
            }

            s.通勤業務走行 = Utility.StrtoInt(txtKmTuukin.Text);
            s.私用走行   = Utility.StrtoInt(txtKmShiyou.Text);

            if (dtDDay.Checked)
            {
                s.代休対象日 = dtDDay.Value.Year.ToString() + dtDDay.Value.Month.ToString().PadLeft(2, '0') + dtDDay.Value.Day.ToString().PadLeft(2, '0');
            }
            else
            {
                s.代休対象日 = string.Empty;
            }

            // 2016/04/13 確認印はチェックした管理者の個人コードを書き込む
            s.確認印 = _chkManager;

            //if (chkManager.Checked)
            //{
            //    s.確認印 = global.flgOn;
            //}
            //else
            //{
            //    s.確認印 = global.flgOff;
            //}

            if (fMode.Mode == global.FORM_ADDMODE)
            {
                s.登録年月日    = DateTime.Now;
                s.登録ユーザーID = global.loginUserID;
            }

            s.更新年月日    = DateTime.Now;
            s.更新ユーザーID = global.loginUserID;
        }
Example #4
0
 ///------------------------------------------------------------------
 /// <summary>
 ///     データ更新 </summary>
 ///------------------------------------------------------------------
 private void dataUpdate(int sID)
 {
     kintaiDataSet.T_勤怠Row s = dts.T_勤怠.Single(a => a.ID == sID);
     rowDataSet(s);
 }