Exemple #1
0
        protected async Task ClockIn()
        {
            timeEntryValidator.ClearErrors();

            var errors = new Dictionary <string, List <string> >();

            if (ClockInEntry.PositionId == 0)
            {
                errors.Add(nameof(TimeEntry.PositionId), new List <string>()
                {
                    "A position must be selected."
                });
            }
            if (ClockInEntry.MemberId == 0)
            {
                errors.Add(nameof(TimeEntry.MemberId), new List <string>()
                {
                    "A member must be selected"
                });
            }

            if (errors.Count() > 0)
            {
                timeEntryValidator.DisplayErrors(errors);
            }
            else
            {
                ClockInEntry.StartTime = DateTime.Now;
                var result = await TSService.PunchClock(ClockInEntry);

                await Modal.CloseAsync(ModalResult.Ok(result));
            }
        }
        protected async Task SaveEntry()
        {
            timeEntryValidator.ClearErrors();

            var errors = new Dictionary <string, List <string> >();

            if (TimeEntry.PositionId == 0)
            {
                errors.Add(nameof(TimeEntry.PositionId), new List <string>()
                {
                    "A position must be selected."
                });
            }
            if (TimeEntry.MemberId == 0)
            {
                errors.Add(nameof(TimeEntry.MemberId), new List <string>()
                {
                    "A member must be selected"
                });
            }

            if (errors.Count() > 0)
            {
                timeEntryValidator.DisplayErrors(errors);
            }
            else
            {
                TimeEntry.StartTime = newDate.Date + newStartTime.TimeOfDay;
                TimeEntry.EndTime   = newDate.Date + newEndTime.TimeOfDay;
                if (IsNewEntry)
                {
                    var newEntry = new TimeEntryCreateDto()
                    {
                        MemberId   = TimeEntry.MemberId,
                        PositionId = TimeEntry.PositionId,
                        StartTime  = TimeEntry.StartTime,
                        EndTime    = TimeEntry.EndTime
                    };

                    var result = await TSService.AddTimeEntry(newEntry);

                    await Modal.CloseAsync(ModalResult.Ok(result));
                }
                else
                {
                    var result = await TSService.UpdateTimeEntry(TimeEntry);

                    await Modal.CloseAsync(ModalResult.Ok(result));
                }
            }
        }