public async Task TestAddbyElapsedTime() { long employeeId = 1; UnitOfWork unitOfWork = new UnitOfWork(); TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchin = null; DateTime asOfDate = DateTime.Now; string account = "1200.215"; int mealDeduction = 30; int manual_elapsedHours = 12; int manual_elapsedMinutes = 30; TimeAndAttendancePunchIn openTA = await taMod.TimeAndAttendance.Query().IsPunchOpen(employeeId, asOfDate); if (openTA == null) { taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(employeeId, account, asOfDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); } //taPunchin = await taMod.TimeAndAttendance.Query().GetPunchOpen(employeeId); taMod.TimeAndAttendance.UpdatePunchIn(taPunchin, mealDeduction, manual_elapsedHours, manual_elapsedMinutes).Apply(); taPunchin = await taMod.TimeAndAttendance.Query().GetEntityById(taPunchin.TimePunchinId); Assert.NotNull(taPunchin.PunchinDate); }
public async Task TestGetPunchOpenView2() { long employeeId = 1; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchInView view = null; view = await taMod.TimeAndAttendance.Query().GetPunchOpenView(employeeId); }
//http://localhost:61612/api/TimeAndAttendance/TAViews?StartDate=10/1/2018&EndDate=10/14/2018 public async Task <IList <TimeAndAttendanceView> > Get([FromQuery] FilterTimeAndAttendance filter) { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); IList <TimeAndAttendanceView> views = await taMod.TimeAndAttendance.Query().GetViewsByDate(filter.StartDate, filter.EndDate); return(views); }
public async Task <IActionResult> GetOpenPunch(long employeeId) { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchInView view = null; view = await taMod.TimeAndAttendance.Query().GetPunchOpenView(employeeId); return(Ok(view)); }
public async Task TestTimeAndAttendanceViewsByDate() { DateTime startDate = DateTime.Parse("10/12/2018"); DateTime endDate = DateTime.Now; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); IList <TimeAndAttendanceView> list = await taMod.TimeAndAttendance.Query().GetViewsByDate(startDate, endDate); if (list.Count > 0) { Assert.True(true); } }
public async Task TestTimeAndAttendanceViewsByIdAndDate(long?employeeId, DateTime startDate, DateTime endDate) { // long employeeId = 4; //DateTime startDate = DateTime.Parse("10/12/2018"); //DateTime endDate = DateTime.Now; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); IList <TimeAndAttendanceView> list = await taMod.TimeAndAttendance.Query().GetViewsByIdAndDate(employeeId, startDate, endDate); if (list.Count > 0) { Assert.True(true); } }
//[ProducesResponseType(typeof(TimeAndAttendanceViewContainer), StatusCodes.Status200OK)] //public async Task<IActionResult> GetTimeAndAttendanceByPage(long employeeId,int pageNumber,int pageSize) public async Task <PageListViewContainer <TimeAndAttendancePunchInView> > GetTimeAndAttendanceByPage(long employeeId, int pageNumber, int pageSize) { //int pageSize = 1; //int pageNumber = 1; //int employeeId = 3; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); Expression <Func <TimeAndAttendancePunchIn, bool> > predicate = e => e.EmployeeId == employeeId; Expression <Func <TimeAndAttendancePunchIn, object> > order = e => e.PunchinDateTime; PageListViewContainer <TimeAndAttendancePunchInView> container = await taMod.TimeAndAttendance.Query().GetViewsByPage(predicate, order, pageSize, pageNumber); return(container); //return Ok(container); }
public void TestUpdateTAPunchin() { long timePunchinId = 3; //UnitOfWork unitOfWork = new UnitOfWork(); TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchinLookUp = taMod.TimeAndAttendance.Query().GetPunchInById(timePunchinId); taPunchinLookUp.DurationInMinutes = 480; taPunchinLookUp.MealDurationInMinutes = 30; taMod.TimeAndAttendance.UpdatePunchIn(taPunchinLookUp).Apply(); Assert.True(true); }
public async Task TestUpdateTAPunchin() { long?timePunchinId = 3; //UnitOfWork unitOfWork = new UnitOfWork(); TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchinLookUp = await taMod.TimeAndAttendance.Query().GetEntityById(timePunchinId); taPunchinLookUp.DurationInMinutes = 480; taPunchinLookUp.MealDurationInMinutes = 30; int mealDeduction = 0; taMod.TimeAndAttendance.UpdatePunchIn(taPunchinLookUp, mealDeduction).Apply(); Assert.True(true); }
public void TestGetTAPunchin() { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); int employeeId = 3; IList <TimeAndAttendancePunchInView> queryList = taMod.TimeAndAttendance.Query().GetTAPunchinByEmployeeId(employeeId); IList <TimeAndAttendancePunchInView> list = new List <TimeAndAttendancePunchInView>(); foreach (var item in queryList) { output.WriteLine($"{item.EmployeeId} Date: {item.PunchinDateTime} Duration: {item.DurationInMinutes}"); list.Add(item); } var Employee = list.Where(e => e.EmployeeId == employeeId).FirstOrDefault(); Assert.True(Employee != null); }
public void TestAddTAPunchin() { //UnitOfWork unitOfWork = new UnitOfWork(); DateTime punchinDate = DateTime.Parse("6/24/2018 08:01:02"); int employeeId = 3; int jobCodeXrefId = 31; int supervisorId = 1; int typeOfTimeUdcXrefId = 11; int approvingAddressId = 1; int payCodeXrefId = 16; int scheduleId = 1; TimeAndAttendancePunchIn taPunchin = new TimeAndAttendancePunchIn(); taPunchin.PunchinDate = punchinDate; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); string punchinDateTime = taMod.TimeAndAttendance.FormatPunchDateTime(taPunchin.PunchinDate); taPunchin.PunchinDateTime = punchinDateTime; taPunchin.EmployeeId = employeeId; taPunchin.JobCodeXrefId = jobCodeXrefId; taPunchin.SupervisorId = supervisorId; taPunchin.TypeOfTimeUdcXrefId = typeOfTimeUdcXrefId; taPunchin.ApprovingAddressId = approvingAddressId; taPunchin.PayCodeXrefId = payCodeXrefId; taPunchin.ScheduleId = scheduleId; taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); //TODO Get the new created punchin TimeAndAttendancePunchIn taPunchinLookUp = taMod.TimeAndAttendance.Query().GetPunchInByExpression(e => e.PunchinDateTime == punchinDateTime && e.EmployeeId == employeeId); //TimeAndAttendancePunchIn taPunchinLookUp= taMod.Query().GetPunchInById(timePunchinId); taMod.TimeAndAttendance.DeletePunchIn(taPunchinLookUp).Apply(); Assert.True(true); }
public async Task <IActionResult> CreatePunchin([FromBody] TimeAndAttendanceParam param) { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchin = null; TimeAndAttendanceTimeView currentTime = await taMod.TimeAndAttendance.Query().GetUTCAdjustedTime(); DateTime asOfDate = currentTime.PunchDate; taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(param.EmployeeId, param.Account, asOfDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); TimeAndAttendancePunchInView view = null; view = await taMod.TimeAndAttendance.Query().GetPunchOpenView(param.EmployeeId); return(Ok(view)); }
public async Task <IActionResult> UpdatePunch([FromBody] TimeAndAttendanceParam param) { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchin = null; TimeAndAttendanceTimeView currentTime = await taMod.TimeAndAttendance.Query().GetUTCAdjustedTime(); DateTime asOfDate = currentTime.PunchDate; taPunchin = await taMod.TimeAndAttendance.Query().GetPunchOpen(param.EmployeeId); taMod.TimeAndAttendance.UpdatePunchIn(taPunchin, param.MealDeduction).Apply(); TimeAndAttendancePunchInView view = null; //view = await taMod.TimeAndAttendance.Query().GetPunchOpenView(param.employeeId); view = await taMod.TimeAndAttendance.Query().GetViewById(taPunchin.TimePunchinId); return(Ok(view)); }
public void TestAddScheduledToWork() { int supervisorId = 1; AddressBookModule abMod = new AddressBookModule(); List <EmployeeView> employeeViews = abMod.AddressBook.Query().GetEmployeesBySupervisorId(supervisorId); string scheduleName = "Schedule A"; DateTime startDate = DateTime.Parse("9/10/2018"); DateTime endDate = DateTime.Parse("9/14/2018"); TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendanceScheduleView scheduleView = taMod.TimeAndAttendanceSchedule.Query().GetScheduleByExpression(e => e.ScheduleName == scheduleName && e.StartDate == startDate && e.EndDate == endDate); IList <TimeAndAttendanceScheduledToWork> items = taMod.TimeAndAttendanceScheduleToWork.BuildScheduledToWork(scheduleView, employeeViews); taMod.TimeAndAttendanceScheduleToWork.AddScheduledToWork(items).Apply(); }
public async Task TestScheduledToWorkPunchin() { long employeeId = 1; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); //DateTime asOfDate = DateTime.Now; TimeAndAttendanceTimeView currentTime = await taMod.TimeAndAttendance.Query().GetUTCAdjustedTime(); string account = "1200.215"; TimeAndAttendancePunchIn openTA = await taMod.TimeAndAttendance.Query().IsPunchOpen(employeeId, currentTime.PunchDate); if (openTA == null) { TimeAndAttendancePunchIn taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(employeeId, account, currentTime.PunchDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); } }
public async Task TestMoveTo() { int pageSize = 1; int pageNumber = 1; int employeeId = 3; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); Expression <Func <TimeAndAttendancePunchIn, bool> > predicate = e => e.EmployeeId == employeeId && e.PunchinDate == DateTime.Parse("6/23/2018"); Expression <Func <TimeAndAttendancePunchIn, object> > order = e => e.PunchinDateTime; PageListViewContainer <TimeAndAttendancePunchInView> container = await taMod.TimeAndAttendance.Query().GetViewsByPage(predicate, order, pageSize, pageNumber); foreach (var item in container.Items) { output.WriteLine($"{item.EmployeeId} Date: {item.PunchinDateTime} Duration: {item.DurationInMinutes}"); } Assert.True(container.TotalItemCount > 0); }
public async Task TestAddTimeByDuration() { //No UTC lookup time long employeeId = 1; int hours = 9; int minutes = 0; int mealDurationInMinutes = 0; DateTime workDay = DateTime.Now; string account = "1200.215"; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn openTA = await taMod.TimeAndAttendance.Query().IsPunchOpen(employeeId, workDay); if (openTA != null) { TimeAndAttendancePunchIn taPunchin = await taMod.TimeAndAttendance.Query().BuildByTimeDuration(employeeId, hours, minutes, mealDurationInMinutes, workDay, account); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); } }
public async Task TestPunchOut() { long employeeId = 1; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchin = null; DateTime asOfDate = DateTime.Now; string account = "1200.215"; int mealDeduction = 0; TimeAndAttendancePunchIn openTA = await taMod.TimeAndAttendance.Query().IsPunchOpen(employeeId, asOfDate); if (openTA == null) { taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(employeeId, account, asOfDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); Thread.Sleep(60000); taMod.TimeAndAttendance.UpdatePunchIn(taPunchin, mealDeduction).Apply(); } else { Thread.Sleep(60000); taMod.TimeAndAttendance.UpdatePunchIn(openTA, mealDeduction).Apply(); } //taPunchin = await taMod.TimeAndAttendance.Query().GetPunchOpen(employeeId); taPunchin = await taMod.TimeAndAttendance.Query().GetEntityById(taPunchin.TimePunchinId); Assert.NotNull(taPunchin.PunchinDate); // taMod.TimeAndAttendance.DeletePunchIn(taPunchin).Apply(); }
public async Task <IActionResult> ManualPunchOut(TimeAndAttendanceParam param) { TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchIn taPunchin = null; TimeAndAttendancePunchInView view = null; //long employeeId=1; //string account = "1200.215"; //int mealDeduction = 30; //int manual_elapsedHours = 12; //int manual_elapsedMinutes = 30; TimeAndAttendancePunchIn openTA = await taMod.TimeAndAttendance.Query().IsPunchOpen(param.EmployeeId, param.AsOfDate); if (openTA != null) { taMod.TimeAndAttendance.UpdatePunchIn(openTA, param.MealDeduction, param.Manual_ElapsedHours, param.Manual_ElapsedMinutes).Apply(); taPunchin = await taMod.TimeAndAttendance.Query().GetEntityById(openTA.TimePunchinId); view = await taMod.TimeAndAttendance.Query().MapToView(taPunchin); } else { taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(param.EmployeeId, param.Account, param.AsOfDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); taPunchin = await taMod.TimeAndAttendance.Query().GetPunchOpen(param.EmployeeId); taMod.TimeAndAttendance.UpdatePunchIn(taPunchin, param.MealDeduction, param.Manual_ElapsedHours, param.Manual_ElapsedMinutes).Apply(); taPunchin = await taMod.TimeAndAttendance.Query().GetEntityById(taPunchin.TimePunchinId); view = await taMod.TimeAndAttendance.Query().MapToView(taPunchin); } return(Ok(view)); //Assert.NotNull(taPunchin.PunchinDate); }
public async Task TestAddSchedule() { UnitOfWork unitOfWork = new UnitOfWork(); long shiftId = 1; Task <TimeAndAttendanceShift> shiftTask = Task.Run(async() => await unitOfWork.timeAndAttendanceRepository.GetShiftById(shiftId)); Task.WaitAll(shiftTask); TimeAndAttendanceScheduleView view = new TimeAndAttendanceScheduleView(); view.ScheduleName = "Schedule A"; view.StartDate = DateTime.Parse("2/18/2019"); view.EndDate = DateTime.Parse("2/22/2019"); view.ShiftId = shiftTask.Result.ShiftId; view.ShiftName = shiftTask.Result.ShiftName; view.ShiftStartTime = shiftTask.Result.ShiftStartTime; view.ShiftEndTime = shiftTask.Result.ShiftEndTime; view.DurationHours = shiftTask.Result.DurationHours; view.DurationMinutes = shiftTask.Result.DurationMinutes; view.Monday = shiftTask.Result.Monday; view.Tuesday = shiftTask.Result.Tuesday; view.Wednesday = shiftTask.Result.Wednesday; view.Thursday = shiftTask.Result.Thursday; view.Friday = shiftTask.Result.Friday; view.Saturday = shiftTask.Result.Saturday; view.Sunday = shiftTask.Result.Sunday; view.ScheduleGroup = "A"; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendanceSchedule schedule = await taMod.Schedule.Query().MapToEntity(view); taMod.Schedule.AddTimeAndAttendanceSchedule(schedule).Apply(); TimeAndAttendanceScheduleView scheduleView = await taMod.Schedule.Query().GetScheduleByExpression(e => e.ScheduleName == view.ScheduleName && e.StartDate == view.StartDate && e.EndDate == view.EndDate); Assert.True(scheduleView != null); }
public async Task TestGetPunchOpenView() { long employeeId = 1; DateTime asOfDate = DateTime.Now; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendancePunchInView view = null; string account = "1200.215"; TimeAndAttendancePunchIn taPunchin = null; taPunchin = await taMod.TimeAndAttendance.Query().BuildPunchin(employeeId, account, asOfDate); taMod.TimeAndAttendance.AddPunchIn(taPunchin).Apply(); view = await taMod.TimeAndAttendance.Query().GetPunchOpenView(employeeId); taPunchin = await taMod.TimeAndAttendance.Query().GetEntityById(view.TimePunchinId ?? 0); taMod.TimeAndAttendance.DeletePunchIn(taPunchin).Apply(); Assert.True(view != null); }
//[InlineData("Schedule A", "2/18/2019" , "2/22/2019" )] public async Task TestAddScheduledToWork(string scheduleName, DateTime startDate, DateTime endDate, string payCode) { int supervisorId = 2; AddressBookModule abMod = new AddressBookModule(); List <EmployeeView> employeeViews = await abMod.Employee.Query().GetViewsBySupervisorId(supervisorId); //string scheduleName = "Schedule A"; //DateTime startDate = DateTime.Parse("2/11/2019"); // DateTime endDate = DateTime.Parse("2/15/2019"); TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); TimeAndAttendanceScheduleView scheduleView = await taMod.Schedule.Query().GetScheduleByExpression(e => e.ScheduleName == scheduleName && e.StartDate == startDate && e.EndDate == endDate); IList <TimeAndAttendanceScheduledToWork> items = taMod.ScheduleToWork.BuildScheduledToWork(scheduleView, employeeViews, payCode); taMod.ScheduleToWork.AddTimeAndAttendanceScheduledToWorks(items.ToList <TimeAndAttendanceScheduledToWork>()).Apply(); Assert.True(items.Count > 0); }
public void TestAddSchedule() { UnitOfWork unitOfWork = new UnitOfWork(); long shiftId = 1; Task <TimeAndAttendanceShift> shiftTask = Task.Run(async() => await unitOfWork.timeAndAttendanceRepository.GetShiftById(shiftId)); Task.WaitAll(shiftTask); TimeAndAttendanceScheduleView view = new TimeAndAttendanceScheduleView(); view.ScheduleName = "Schedule A"; view.StartDate = DateTime.Parse("9/10/2018"); view.EndDate = DateTime.Parse("9/14/2018"); view.ShiftId = shiftTask.Result.ShiftId; view.ShiftName = shiftTask.Result.ShiftName; view.ShiftStartTime = shiftTask.Result.ShiftStartTime; view.ShiftEndTime = shiftTask.Result.ShiftEndTime; view.ScheduleGroup = "A"; TimeAndAttendanceModule taMod = new TimeAndAttendanceModule(); taMod.TimeAndAttendanceSchedule.AddSchedule(view).Apply(); }