示例#1
0
        public static UserAttendanceVM MToVM(Attendance item)
        {
            var temp = new UserAttendanceVM()
            {
                id                = item.ID,
                profileImage      = item.User.ProfileImage == null ? "/Assets/images/no-image.jpg" : item.User.ProfileImage,
                name              = item.User.FirstName + " " + item.User.LastName + " " + item.User.ExtensionName,
                actualLoginImage  = item.TimeInImage == null ? "/Assets/images/no-image.jpg" : item.TimeInImage,
                actualLoginTime   = item.TimeIn.HasValue ? item.TimeIn.Value.Hours + ":" + item.TimeIn.Value.Minutes : "not yet",
                actualLogoutImage = item.TimeOutImage == null ? "/Assets/images/no-image.jpg" : item.TimeOutImage,
                actualLogoutTime  = item.TimeOut != null ? item.TimeOut.Value.Hours + ":" + item.TimeOut.Value.Minutes : "not yet",
                TotalWorkHours    = item.HrsWork.HasValue ? item.HrsWork.Value.ToString() : "N/A",
                TotalBreakTime    = item.TotalBreakTime.HasValue ? item.TotalBreakTime.Value.ToString() : "N/A",
                ProductiveHours   = item.ProductiveHrs.HasValue ? item.ProductiveHrs.Value.ToString() : "N/A",
                Remarks           = item.Remarks == "" || item.Remarks == null ? "N/A" : item.Remarks,
                DateCreated       = TimeFormatter.DateToString(item.CreatedAt.Value),
                AttendanceDate    = TimeFormatter.DateToString(item.AttendanceDate.Value),
                User              = new UsersViewModel()
                {
                    ID = item.User.ID, FirstName = item.User.FirstName, LastName = item.User.LastName, MiddleName = item.User.MiddleName, ExtensionName = item.User.ExtensionName
                },
                Shift = new ShiftViewModel()
                {
                    ID = item.ShiftID, TimeIn = item.Shift.TimeIn.HasValue ? item.Shift.TimeIn.Value.ToString() : "00:00:00", TimeOut = item.Shift.TimeOut.HasValue ? item.Shift.TimeOut.Value.ToString() : "00:00:00"
                },
                Status = new AttendanceStatusViewModel()
                {
                    ID = item.AttendanceStatusID
                }
            };

            return(temp);
        }
示例#2
0
 public async Task <JsonResult> Archived(UserAttendanceVM vm, bool isArchived)
 {
     try {
         var model = _attendanceService.GetByIDWithAsync(vm.id).Result;
         model.IsArchived = isArchived;
         _attendanceService.Update(model);
         return(Json(new { success = true }));
     } catch { return(Json(new { success = false })); }
 }
示例#3
0
 public static Attendance VMToM(UserAttendanceVM model)
 {
     return(new Attendance()
     {
         ID = model.id,
         UserID = model.User.ID,
         AttendanceStatusID = model.Status.ID,
         AttendanceDate = Convert.ToDateTime(model.AttendanceDate),
         TimeIn = !DataVerification.IsNull(DataVerification.VerifyData(model.actualLogoutTime)) ? TimeSpan.Parse(model.actualLoginTime) : new TimeSpan(),
         TimeOut = !DataVerification.IsNull(DataVerification.VerifyData(model.actualLogoutTime)) ? TimeSpan.Parse(model.actualLogoutTime) : new TimeSpan(),
         TimeInImage = model.actualLoginImage,
         TimeOutImage = model.actualLogoutImage,
         Remarks = model.Remarks,
         HrsWork = !DataVerification.IsNull(DataVerification.VerifyData(model.TotalWorkHours)) ? TimeSpan.Parse(model.TotalWorkHours) : new TimeSpan(),
         ProductiveHrs = !DataVerification.IsNull(DataVerification.VerifyData(model.ProductiveHours)) ? TimeSpan.Parse(model.ProductiveHours) : new TimeSpan(),
         TotalBreakTime = !DataVerification.IsNull(DataVerification.VerifyData(model.ProductiveHours)) ? TimeSpan.Parse(model.TotalBreakTime) : new TimeSpan(),
         ShiftID = model.Shift.ID
     });
 }
示例#4
0
 public async Task <JsonResult> Update(UserAttendanceVM vm)
 {
     try
     {
         var modelReal = AttendanceUtility.FilterByID(vm.id, _attendanceService.GetAll().Result.ToList()).FirstOrDefault();
         var time      = TimeUtility.GetTimeZoneByName(CurrentUser.TimeZone);
         var model     = AttendanceUtility.VMToM(vm);
         model.CreatedAt      = modelReal.CreatedAt;
         model.CreatedBy      = model.CreatedBy;
         model.TotalOverBreak = modelReal.TotalOverBreak;
         model.TotalLateTime  = modelReal.TotalLateTime;
         model.TotalUnderTime = modelReal.TotalUnderTime;
         model.UpdatedAt      = time;
         model.UpdatedBy      = CurrentUser.ID;
         _attendanceService.Update(model);
         return(Json(new { success = true }));
     }
     catch { return(Json(new { success = false })); }
 }