예제 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="activityId"></param>
        /// <param name="employeeName"></param>
        /// <returns></returns>
        public bool InsertTimeOut(ClockOutQueryModel clockOut)
        {
            DailyTimeOut newRecord = new DailyTimeOut();

            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    newRecord.EmployeeId   = clockOut.UserId;
                    newRecord.ActivityCd   = clockOut.ActivityId;
                    newRecord.TimeOutDttm  = clockOut.ClockOutDateTime;
                    newRecord.IsActive     = true;
                    newRecord.CreateDttm   = DateTime.Now;
                    newRecord.CreateUserId = clockOut.UserName;
                    newRecord.UpdateDttm   = DateTime.Now;
                    newRecord.UpdateUserId = clockOut.UserName;

                    context.DailyTimeOuts.Add(newRecord);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(false);
            }

            return(true);
        }
예제 #2
0
        /// <summary>
        /// Updates existing Activity.
        /// </summary>
        /// <param name="activityId"></param>
        /// <param name="newActivity"></param>
        /// <returns></returns>
        public string UpdateActivity(int activityId, Activity newActivity)
        {
            Activity activityQuery = new Activity();

            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    activityQuery = context.Activities
                                    .Where(x => x.ActivityId == activityId && x.IsActive == true).FirstOrDefault();

                    activityQuery.ActivityNm = newActivity.ActivityNm;
                    activityQuery.UpdateDttm = DateTime.Now;

                    context.Activities.Attach(activityQuery);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            return("Activity updated.");
        }
예제 #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="firstName"></param>
        /// <param name="lastName"></param>
        /// <param name="userName"></param>
        /// <returns></returns>
        public string InsertNewUser(string firstName, string lastName, string userName)
        {
            User newUser = new User();

            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    newUser.FirstName    = firstName;
                    newUser.LastName     = lastName;
                    newUser.IsActive     = true;
                    newUser.UserName     = userName;
                    newUser.UserPassword = "******";
                    newUser.CreateDttm   = DateTime.Now;
                    newUser.CreateUserId = "Admin";
                    newUser.UpdateDttm   = DateTime.Now;
                    newUser.UpdateUserId = "Admin";

                    context.Users.Add(newUser);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            return("New user inserted.");
        }
예제 #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="newPassword"></param>
        /// <returns></returns>
        public string UpdatePassword(int userId, string newPassword)
        {
            User userQuery = new User();

            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    userQuery = context.Users.Where(x => x.UserKey == userId && x.IsActive == true).FirstOrDefault();

                    userQuery.UserPassword = newPassword;
                    userQuery.UpdateDttm   = DateTime.Now;
                    userQuery.UpdateUserId = userQuery.UserName;

                    context.Users.Attach(userQuery);
                    context.Entry(userQuery).State = System.Data.Entity.EntityState.Modified;
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            return("User record updated.");
        }
예제 #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="userName"></param>
 /// <returns></returns>
 public DailyTimeOut GetEmployeeDailyTimeOut(string userName, DateTime timeIn)
 {
     using (TimeInEntities context = new TimeInEntities())
     {
         var query = context.DailyTimeOuts.Include("Activity").Where(x => x.User.UserName.Equals(userName) &&
                                                                     x.IsActive && DbFunctions.TruncateTime(x.TimeOutDttm) == timeIn.Date).FirstOrDefault();
         return(query);
     }
 }
예제 #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="userName"></param>
 /// <returns></returns>
 public DailyTimeIn GetEmployeeRecentTimeIn(string userName)
 {
     using (TimeInEntities context = new TimeInEntities())
     {
         var query = context.DailyTimeIns.Include("Activity").Where(x => x.User.UserName.Equals(userName) &&
                                                                    x.IsActive).OrderByDescending(x => x.TimeInDttm).FirstOrDefault();
         return(query);
     }
 }
예제 #7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        public List <DailyTimeOut> GetDailyTimeOut(DateTime date)
        {
            List <DailyTimeOut> timeOutList = new List <DailyTimeOut>();

            using (TimeInEntities context = new TimeInEntities())
            {
                timeOutList = context.DailyTimeOuts.Where(x => x.UpdateDttm.Date == date.Date).ToList();
            }

            return(timeOutList);
        }
예제 #8
0
        /// <summary>
        /// Gets specific Activity from Activity table.
        /// </summary>
        /// <param name="activityId"></param>
        /// <returns>Activity object</returns>
        public Activity GetActivitySingle(int activityId)
        {
            Activity activityItem = new Activity();

            using (TimeInEntities context = new TimeInEntities())
            {
                activityItem = context.Activities.Where(x => x.ActivityId == activityId && x.IsActive == true).FirstOrDefault();
            }

            return(activityItem);
        }
예제 #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userName"></param>
        /// <returns></returns>
        public User GetUser(string userName)
        {
            User userQuery = new User();

            using (TimeInEntities context = new TimeInEntities())
            {
                userQuery = context.Users.Where(x => x.UserName == userName && x.IsActive == true).FirstOrDefault();
            }

            return(userQuery);
        }
예제 #10
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        public List <DailyTimeOut> GetMonthTimeOut(DateTime date)
        {
            DateTime firstDayOfMonth = new DateTime(date.Year, date.Month, 1);
            DateTime lastDayOfMonth  = firstDayOfMonth.AddMonths(1).AddDays(-1);

            List <DailyTimeOut> timeOutList = new List <DailyTimeOut>();

            using (TimeInEntities context = new TimeInEntities())
            {
                timeOutList = context.DailyTimeOuts.Where(x => x.CreateDttm > firstDayOfMonth && x.CreateDttm < lastDayOfMonth).ToList();
            }

            return(timeOutList);
        }
예제 #11
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userKey"></param>
        /// <param name="month"></param>
        /// <returns></returns>
        public List <DailyTimeOut> GetEmployeeMonthTimeOut(int userKey, DateTime month)
        {
            DateTime firstDayOfMonth = new DateTime(month.Year, month.Month, 1);
            DateTime lastDayOfMonth  = firstDayOfMonth.AddMonths(1).AddDays(-1);

            using (TimeInEntities context = new TimeInEntities())
            {
                var query = context.DailyTimeOuts.Where(x => x.EmployeeId == userKey &&
                                                        (x.TimeOutDttm > firstDayOfMonth && x.TimeOutDttm < lastDayOfMonth) &&
                                                        x.IsActive == true)
                            .ToList();

                return(query);
            }
        }
예제 #12
0
        /// <summary>
        /// Inserts new Acitivity to the database.
        /// </summary>
        /// <param name="newActivity"></param>
        /// <returns></returns>
        public string InsertActivity(Activity newActivity)
        {
            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    context.Activities.Add(newActivity);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            return("Activity saved.");
        }
예제 #13
0
        /// <summary>
        ///  Gets all active Activities from database.
        /// </summary>
        /// <returns></returns>
        public List <ActivityModel> GetAllActivities()
        {
            List <ActivityModel> activities = new List <ActivityModel>();

            using (TimeInEntities context = new TimeInEntities())
            {
                activities = context.Activities.Where(x => x.IsActive == true).Select(x => new ActivityModel {
                    ActivityId   = x.ActivityId,
                    ActivityNm   = x.ActivityNm,
                    IsActive     = x.IsActive,
                    CreateDttm   = x.CreateDttm,
                    CreateUserId = x.CreateUserId,
                    UpdateDttm   = x.UpdateDttm,
                    UpdateUserId = x.UpdateUserId
                }).ToList();
            }

            return(activities);
        }
예제 #14
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="firstName"></param>
        /// <param name="lastName"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public bool VerifyPassword(string firstName, string lastName, string password)
        {
            using (TimeInEntities context = new TimeInEntities())
            {
                var userQuery = context.Users
                                .Where(x => x.FirstName.Equals(firstName) &&
                                       x.LastName.Equals(lastName) &&
                                       x.UserPassword.Equals(password) && x.IsActive == true)
                                .FirstOrDefault();

                if (userQuery != null)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
예제 #15
0
        /// <summary>
        /// Deactivates specified query. Application will not do hard delete.
        /// </summary>
        /// <param name="activityId"></param>
        /// <returns></returns>
        public string DeleteActivity(int activityId)
        {
            try
            {
                using (TimeInEntities context = new TimeInEntities())
                {
                    var activityQuery = context.Activities
                                        .Where(x => x.ActivityId == activityId).FirstOrDefault();

                    activityQuery.IsActive = false;
                    context.Activities.Attach(activityQuery);
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            return("Activity deleted.");
        }