Example #1
0
        private List <DispDailyAttendanceData> GetAttendancdData(MasterGetudo getudorecord)
        {
            this.MonthlyAttemdance = new MonthlyAttendanceData();
            MonthlyAttemdance.ExcelPath_Holidays = this.txtExcelPath_Holiday.Text;
            MonthlyAttemdance.ExcelPath          = this.txtExcelPath_Attendance.Text;
            var errorinfo = this.MonthlyAttemdance.GetInitAttendanceData(getudorecord, out AttendanceDataBox, out SummaryAttendance);

            if (errorinfo.HasError)
            {
                this.ShowMessageDialog(this, new RoutedEventArgs(), errorinfo.ErrorReason);
            }

            return(this.ConvertAttendanceListtoDisp(this.GetAttendancdDataByGetudoYYYMM(AttendanceDataBox, getudorecord)));
        }
Example #2
0
 private void DisplaySummaryAttendanceData(List <SummaryAttendanceData> list, MasterGetudo getudo)
 {
     foreach (var item in list)
     {
         if (item.GetudoYYYYMM == getudo.GetudoYYYYMM)
         {
             this.lblthisMonthProspectsOverTime.Content    = this.DisplayMonthProspectsOverTime(item.OverTime);
             this.lblthisMonthProspectsOverTime.Foreground = this.GetColor(item.Is45Over);
             return;
         }
     }
     this.lblthisMonthProspectsOverTime.Content    = this.DisplayMonthProspectsOverTime(new TimeSpan(0, 0, 0));
     this.lblthisMonthProspectsOverTime.Foreground = this.GetColor(false);
     return;
 }
Example #3
0
        public ErrorInfo GetHolidaysByGetudoRecord(MasterGetudo getudorecord, out List <MasterHoliday> holidays)
        {
            holidays = HolidayList;
            var errorinfo = GetHolidays(ExcelPath);

            if (errorinfo.HasError)
            {
                return(errorinfo);
            }

            holidays = HolidayList.Where(x => x.GetudoYYYYMM == getudorecord.GetudoYYYYMM).ToList();
            if (holidays == null)
            {
                holidays = new List <MasterHoliday>();
            }
            return(errorinfo);
        }
Example #4
0
        private ErrorInfo GetGetudoNumByInt(int getudoyyyymm, out MasterGetudo Getudonumrecord)
        {
            foreach (var item in GetudoNumList)
            {
                if (item.GetudoYYYYMM == getudoyyyymm)
                {
                    Getudonumrecord = item;
                    return(new ErrorInfo());
                }
            }
            Getudonumrecord = new MasterGetudo();
            var errorInfo = new ErrorInfo();

            errorInfo.HasError    = true;
            errorInfo.ErrorReason = "月度マスタ未登録です";
            return(errorInfo);
        }
        public ErrorInfo GetInitMonthlyData(MasterGetudo getudorecord, out List <DailyAttendanceData> monthlyattendancelist)
        {
            monthlyattendancelist = new List <DailyAttendanceData>();
            var errorinfo = new ErrorInfo();

            if (getudorecord.GetudoYYYYMM == 0)
            {
                errorinfo.HasError    = true;
                errorinfo.ErrorReason = "月度の値が不正です。";
                return(errorinfo);
            }

            //祝日マスタの読み込み
            var holidaylist = new List <MasterHoliday>();
            var holidays    = new Holidays();

            holidays.ExcelPath = ExcelPath_Holidays;
            errorinfo          = holidays.GetHolidaysByGetudoRecord(getudorecord, out holidaylist);
            if (errorinfo.HasError)
            {
                return(errorinfo);
            }

            for (DateTime date = getudorecord.StartDate; date <= getudorecord.EndDate; date = date.AddDays(1))
            {
                var attendancerecord = new DailyAttendanceData();
                attendancerecord.GetudoYYYYMM = getudorecord.GetudoYYYYMM;
                attendancerecord.Day          = date;

                var holiday = holidaylist.Find(x => x.Day == date);
                if (holiday != null)
                {
                    attendancerecord.DayKBN = EnumManager.DayKBN.HolyDay;
                    attendancerecord.Bikou  = holiday.HolidayName;
                }
                else
                {
                    attendancerecord.DayKBN = this.GetDayKBN(date);
                }
                monthlyattendancelist.Add(attendancerecord);
            }
            return(errorinfo);
        }
Example #6
0
 private ErrorInfo GetGetudoNumList(FileStream file, out List <MasterGetudo> GetudonumList)
 {
     GetudonumList = new List <MasterGetudo>();
     try
     {
         IWorkbook workbook = WorkbookFactory.Create(file);
         var       sheet    = workbook.GetSheetAt(0);
         int       lastRow  = sheet.LastRowNum;
         for (int i = 1; i <= lastRow; i++)
         {
             var   getudorecord = new MasterGetudo();
             IRow  row          = sheet.GetRow(i);
             ICell cell         = row == null ? null : row.GetCell(0);
             int   intyyyymm    = cell == null ? 0 : (int)cell.NumericCellValue;
             if (intyyyymm != 0)
             {
                 getudorecord.GetudoYYYYMM = intyyyymm;
                 ICell    cell_startdate   = row == null ? null : row.GetCell(1);
                 string   string_startdate = cell_startdate == null ? string.Empty : cell_startdate.DateCellValue.ToShortDateString();
                 DateTime startdate;
                 DateTime.TryParse(string_startdate, out startdate);
                 getudorecord.StartDate = startdate;
                 ICell    cell_enddate   = row == null ? null : row.GetCell(2);
                 string   string_enddate = cell_enddate == null ? string.Empty : cell_enddate.DateCellValue.ToShortDateString();
                 DateTime enddate;
                 DateTime.TryParse(string_enddate, out enddate);
                 getudorecord.EndDate = enddate;
                 GetudonumList.Add(getudorecord);
             }
             else
             {
                 return(new ErrorInfo());
             }
         }
     }
     catch (Exception ex)
     {
         var errorinfo = new ErrorInfo();
         errorinfo.HasError    = true;
         errorinfo.ErrorReason = ex.Message;
     }
     return(new ErrorInfo());
 }
Example #7
0
        private ErrorInfo GetGetudoNum(string ExcelPath, DateTime date, out MasterGetudo Getudonumrecoed)
        {
            FileStream file;
            ErrorInfo  errorinfo = new ErrorInfo();

            Getudonumrecoed = new MasterGetudo();
            errorinfo       = ExcelOperation.OpenExcelFile(ExcelPath, out file);
            if (errorinfo.HasError)
            {
                return(errorinfo);
            }
            errorinfo = GetGetudoNumList(file, out GetudoNumList);
            if (errorinfo.HasError)
            {
                return(errorinfo);
            }
            errorinfo = ExcelOperation.ReleaseExcelFile(file);


            if (!GetudoNumList.Any())
            {
                errorinfo.HasError    = true;
                errorinfo.ErrorReason = "月度マスタの取得に失敗しました";
                return(errorinfo);
            }


            var getudonumrecord = GetudoNumList.Find(x => x.StartDate <= date && x.EndDate >= date);

            if (getudonumrecord == null)
            {
                errorinfo.HasError    = true;
                errorinfo.ErrorReason = "月度マスタに当月のデータがありません";
            }
            else
            {
                Getudonumrecoed = getudonumrecord;
            }
            return(errorinfo);
        }
        public ErrorInfo GetInitAttendanceData(MasterGetudo getudorecord, out List <List <DailyAttendanceData> > attendanceDataBox, out List <SummaryAttendanceData> summaryAttendanceList)
        {
            attendanceDataBox     = new List <List <DailyAttendanceData> >();
            summaryAttendanceList = new List <SummaryAttendanceData>();
            var errorinfo = new ErrorInfo();

            if (getudorecord.GetudoYYYYMM == 0)
            {
                errorinfo.HasError    = true;
                errorinfo.ErrorReason = "月度の値が不正です。";
                return(errorinfo);
            }

            FileStream file;

            errorinfo = ExcelOperation.OpenExcelFile(ExcelPath, out file);
            if (errorinfo.HasError)
            {
                return(errorinfo);
            }
            errorinfo = GetAttendanceDataList(file, out attendanceDataBox, out summaryAttendanceList);
            if (errorinfo.HasError)
            {
                return(errorinfo);
            }
            errorinfo = ExcelOperation.ReleaseExcelFile(file);

            if (!attendanceDataBox.Any() ||
                attendanceDataBox.Count(x => x.Count(r => r.GetudoYYYYMM == getudorecord.GetudoYYYYMM) != 0) == 0)
            {
                var list = new List <DailyAttendanceData>();
                errorinfo = GetInitMonthlyData(getudorecord, out list);
                attendanceDataBox.Add(list);
            }

            return(errorinfo);
        }
Example #9
0
 private void DisplayGetudoData(MasterGetudo masterGetudo)
 {
     this.txtGetudoNumber.Value   = masterGetudo.GetudoYYYYMM;
     this.lblGetudoFromTo.Content = masterGetudo.StartDate.ToShortDateString() + " ~ " + masterGetudo.EndDate.ToShortDateString();
 }
Example #10
0
        private List <DailyAttendanceData> GetAttendancdDataByGetudoYYYMM(List <List <DailyAttendanceData> > AttendanceDataBox, MasterGetudo getudorecord)
        {
            foreach (var item in AttendanceDataBox)
            {
                if (item.Count(r => r.GetudoYYYYMM == getudorecord.GetudoYYYYMM) >= 1)
                {
                    AttendanceDataBox.Remove(item);
                    return(item);
                }
            }
            var newList = new List <DailyAttendanceData>();

            this.MonthlyAttemdance.GetInitMonthlyData(getudorecord, out newList);
            return(newList);
        }
Example #11
0
        public ErrorInfo GetConsistentValue(int getudoyyyymm, out int newgetudoyyyymm, out MasterGetudo Getudonumrecord)
        {
            newgetudoyyyymm = GetNewGetudoNumber(getudoyyyymm);

            return(GetGetudoNumByInt(newgetudoyyyymm, out Getudonumrecord));
        }
Example #12
0
 public ErrorInfo GetInitValue(out MasterGetudo Getudonumrecord)
 {
     return(GetGetudoNum(ExcelPath, DateTime.Now, out Getudonumrecord));
 }