Exemple #1
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "loginInfo");

            var user = UserRepository.Entities.SingleOrDefault(o => o.UserName == loginInfo.LoginName);

            if (user == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }

            if (!(user.Password.Compare(loginInfo.Password)))
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }

            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, UserId = user.Id
            };

            LoginLogRepository.Insert(loginLog);

            var info = new UserInfo()
            {
                UserName = user.UserName,
                Password = user.Password,
                NickName = user.NickName,
                Email    = user.Email
            };

            return(new OperationResult(OperationResultType.Success, "登录成功。", info));
        }
        //两表同时修改
        public void Method5()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName  = "******",
                Password  = "******",
                LoginLogs = new List <LoginLog>()
                {
                    new LoginLog()
                    {
                        IpAddress = "user5的ip"
                    }
                }
            };

            repo.Insert(user);

            SysUser newUser = repo.Entities.Include(p => p.LoginLogs).SingleOrDefault(o => o.UserName == "user5");

            newUser.UserName = "******";
            newUser.LoginLogs.FirstOrDefault().IpAddress = "修改的user5的ip";

            repo.Update(newUser, false);
            repo1.Update(newUser.LoginLogs.FirstOrDefault(), false);
            repo.Save();
        }
Exemple #3
0
        public object GetDetails(int page, int rows, string SystemID, string UserID, string LoginPC, string LoginTime)
        {
            IQueryable <AUTH_LOGIN_LOG> LOGINLOGQuery = LoginLogRepository.GetQueryable();
            var HelpContent = LOGINLOGQuery.Where(c => c.SYSTEM_SYSTEM_ID.Contains(SystemID) &&
                                                  c.USER_USER_ID.Contains(UserID) &&
                                                  c.LOGIN_PC.Contains(LoginPC) &&
                                                  c.LOGIN_TIME.Contains(LoginTime));

            HelpContent = HelpContent.OrderBy(h => h.LOG_ID);
            int total = HelpContent.Count();

            HelpContent = HelpContent.Skip((page - 1) * rows).Take(rows);

            var temp = HelpContent.ToArray().Select(c => new
            {
                ID               = c.LOG_ID,
                LOGIN_PC         = c.LOGIN_PC,
                LOGIN_TIME       = c.LOGIN_TIME,
                LOGOUT_TIME      = c.LOGOUT_TIME,
                SYSTEM_SYSTEM_ID = c.SYSTEM_SYSTEM_ID,
                SYSTEM_NAME      = c.AUTH_SYSTEM.SYSTEM_NAME,
                USER_USER_ID     = c.USER_USER_ID,
                CHINESE_NAME     = c.AUTH_USER.CHINESE_NAME,
                USER_NAME        = c.AUTH_USER.USER_NAME
            });

            return(new { total, rows = temp.ToArray() });
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="loginInfo"></param>
        /// <returns></returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "logininfo");
            var user =
                SysUserRepository.Entities.SingleOrDefault(
                    u => u.Account == loginInfo.Account || u.Email == loginInfo.Email);

            if (user == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定的账号不存在"));
            }
            if (user.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确"));
            }

            var loginLog = new LoginLog
            {
                IpAddress = loginInfo.IpAddress,
                User      = user
            };

            LoginLogRepository.Insert(loginLog);

            return(new OperationResult(OperationResultType.Success, "登录成功", user));
        }
 /// <summary>
 /// 用户登录
 /// </summary>
 /// <param name="loginInfo">登录信息</param>
 /// <returns>业务操作结果</returns>
 public virtual OperationResult Login(LoginInfo loginInfo, string CheckCode, ref SystemUser user)
 {
     try
     {
         PublicHelper.CheckArgument(loginInfo, "loginInfo");
         if (loginInfo.CheckCode.ToUpper() != CheckCode.ToUpper())
         {
             return(new OperationResult(OperationResultType.QueryNull, "验证码输入有误。"));
         }
         user = SysUserRepository.Entities.SingleOrDefault(m => m.UserName == loginInfo.Account || m.Email == loginInfo.Account);
         if (user == null)
         {
             return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
         }
         if (user.Password != loginInfo.Password)
         {
             return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
         }
         LoginLog loginLog = new LoginLog {
             IpAddress = loginInfo.IpAddress, SystemUserID = user.Id
         };
         LoginLogRepository.Insert(loginLog);
         return(new OperationResult(OperationResultType.Success, "登录成功。", user));
     }
     catch (Exception ex)
     {
         return(new OperationResult(OperationResultType.QueryNull, ex.Message.ToString()));;
     }
 }
        public AccountService(IOptions <JwtSettings> _jwtSettingsAccesser, ILoginInfo loginInfo, LoginLogService loginLogService, LoginLogRepository loginLogRepository, AccountRepository accountRepository, AccountRoleRepository accountRoleRepository, IMapper mapper)
        {
            _jwtSettings = _jwtSettingsAccesser.Value;

            _loginLogService       = loginLogService;
            _loginLogRepository    = loginLogRepository;
            _accountRepository     = accountRepository;
            _accountRoleRepository = accountRoleRepository;
            _loginInfo             = loginInfo;
            _mapper = mapper;
        }
Exemple #7
0
        public bool Add(string UserName, string SystemID)
        {
            AUTH_LOGIN_LOG LoginLog = new AUTH_LOGIN_LOG();

            LoginLog.LOG_ID           = LoginLogRepository.GetNewID("AUTH_LOGIN_LOG", "LOG_ID");
            LoginLog.LOGIN_PC         = System.Net.Dns.Resolve(System.Net.Dns.GetHostName()).AddressList[0].ToString();
            LoginLog.LOGIN_TIME       = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
            LoginLog.SYSTEM_SYSTEM_ID = SystemID;
            LoginLog.USER_USER_ID     = UserRepository.GetSingle(i => i.USER_NAME == UserName).USER_ID;

            LoginLogRepository.Add(LoginLog);
            LoginLogRepository.SaveChanges();
            return(true);
        }
Exemple #8
0
        public bool UpdateLoginLog(string user_name, string logout_time)
        {
            var LoginLog = LoginLogRepository.GetQueryable().Where(s => s.User.UserName == user_name).Select(s => s).OrderByDescending(s => s.LoginTime).ToArray();

            if (LoginLog.Length > 0)
            {
                LoginLog[0].LogoutTime = logout_time;
                LoginLogRepository.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #9
0
        public bool Delete(string loginLogId, out string strResult)
        {
            strResult = string.Empty;
            bool result = false;
            Guid loid   = new Guid(loginLogId);
            var  log    = LoginLogRepository.GetQueryable().FirstOrDefault(lo => lo.LogID == loid);

            if (log != null)
            {
                LoginLogRepository.Delete(log);
                LoginLogRepository.SaveChanges();
                result = true;
            }
            else
            {
                strResult = "原因:未找到当前需要删除的数据!";
            }
            return(result);
        }
Exemple #10
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public OperationResult Login(LoginInfo loginInfo)
        {
            Member member = MemberRepository.Entities.SingleOrDefault(m => m.UserName == loginInfo.Access || m.Email == loginInfo.Access);

            if (member == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }
            if (member.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }
            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, Member = member
            };

            LoginLogRepository.Insert(loginLog);
            return(new OperationResult(OperationResultType.Success, "登录成功。", member));
        }
        //一步新增,从UserRepo
        public void Method1()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName  = "******",
                Password  = "******",
                LoginLogs = new List <LoginLog>()
                {
                    new LoginLog()
                    {
                        IpAddress = "user1的ip"
                    }
                }
            };

            repo.Insert(user);
        }
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="loginInfo">登录信息</param>
        /// <returns>业务操作结果</returns>
        public virtual OperationResult Login(LoginInfo loginInfo)
        {
            PublicHelper.CheckArgument(loginInfo, "loginInfo");
            Member member = MemberRepository.Entities.SingleOrDefault(p => p.UserName.Equals(loginInfo.Access) || p.Email.Equals(loginInfo.Access));

            if (member == null)
            {
                return(new OperationResult(OperationResultType.QueryNull, "指定账号的用户不存在。"));
            }
            if (member.Password != loginInfo.Password)
            {
                return(new OperationResult(OperationResultType.Warning, "登录密码不正确。"));
            }
            LoginLog loginLog = new LoginLog {
                IpAddress = loginInfo.IpAddress, Member = member
            };

            LoginLogRepository.Insert(loginLog);
            return(new OperationResult(OperationResultType.Success, "登录成功。", member));
        }
Exemple #13
0
        public bool Emptys(out string strResult)
        {
            strResult = string.Empty;
            bool result = false;
            var  log    = LoginLogRepository.GetQueryable();

            if (log != null)
            {
                foreach (var lo in log)
                {
                    LoginLogRepository.Delete(lo);
                }
                LoginLogRepository.SaveChanges();
                result = true;
            }
            else
            {
                strResult = "原因:未找到当前需要删除的数据!";
            }
            return(result);
        }
        //所以还是一样的,追踪的对象才不会出现这种问题,因为它的修改会被上下文追踪
        public void Method3()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName = "******",
                Password = "******",
            };

            repo.Insert(user);

            var newLoginLog = new LoginLog()
            {
                IpAddress = "user3的ip",
                User      = user
            };

            repo1.Insert(newLoginLog);
        }
Exemple #15
0
        public object GetDetails(int page, int rows, string userName, string systemName)
        {
            IQueryable <LoginLog> loginLogquery = LoginLogRepository.GetQueryable();
            IQueryable <User>     userLogquery  = UserRepository.GetQueryable();
            IQueryable <THOK.Authority.DbModel.System> systemLogquery = SystemRepository.GetQueryable();
            var loginlog = loginLogquery.Join(userLogquery,
                                              lo => lo.User_UserID,
                                              u => u.UserID,
                                              (lo, u) => new { lo.LogID, lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.User_UserID, lo.System_SystemID, u.UserName })
                           .Join(systemLogquery,
                                 lo => lo.System_SystemID,
                                 s => s.SystemID,
                                 (lo, s) => new { lo.LogID, lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.User_UserID, lo.System_SystemID, lo.UserName, s.SystemName })
                           .Where(lo => lo.UserName.Contains(userName) && lo.SystemName.Contains(systemName))
                           .OrderByDescending(lo => lo.LoginTime);
            int total     = loginlog.Count();
            var loginlogs = loginlog.Skip((page - 1) * rows).Take(rows);
            var login     = loginlogs
                            .Select(lo => new { lo.LogID, lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.User_UserID, lo.System_SystemID, lo.UserName, lo.SystemName });

            return(new { total, rows = login.ToArray() });
        }
        //最正常的新增方式
        public void Method4()
        {
            var repo  = new UserRepository();
            var repo1 = new LoginLogRepository();

            var user = new SysUser()
            {
                UserName = "******",
                Password = "******",
            };

            repo.Insert(user);

            var newUser = repo.Entities.FirstOrDefault(p => p.UserName == "user4");

            var newLoginLog = new LoginLog()
            {
                IpAddress = "user4的ip",
                UserId    = newUser.Id
            };

            repo1.Insert(newLoginLog);
        }
Exemple #17
0
        public bool CreateLoginLog(string login_time, string user_name, Guid system_ID, string ipaddress)
        {
            var userid = UserRepository.GetQueryable().Where(s => s.UserName == user_name).Select(s => new { userId = s.UserID });

            if (userid.ToArray().Length > 0)
            {
                var LoginLog = new LoginLog()
                {
                    LogID           = Guid.NewGuid(),
                    LoginPC         = ipaddress,
                    LoginTime       = login_time,
                    LogoutTime      = "",
                    User_UserID     = userid.ToArray()[0].userId,
                    System_SystemID = system_ID
                };
                LoginLogRepository.Add(LoginLog);
                LoginLogRepository.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #18
0
        public System.Data.DataTable GetLoginLog(int page, int rows, string loginPC, string loginTime, string logoutTime)
        {
            IQueryable <LoginLog> loginLogquery = LoginLogRepository.GetQueryable();
            IQueryable <User>     userLogquery  = UserRepository.GetQueryable();
            IQueryable <THOK.Authority.DbModel.System> systemLogquery = SystemRepository.GetQueryable();
            var loginlog = loginLogquery.Join(userLogquery,
                                              lo => lo.User_UserID,
                                              u => u.UserID,
                                              (lo, u) => new { lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.System_SystemID, u.UserName })
                           .Join(systemLogquery,
                                 lo => lo.System_SystemID,
                                 s => s.SystemID,
                                 (lo, s) => new { lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.UserName, s.SystemName })
                           .Where(lo => lo.LoginPC.Contains(loginPC) && lo.LoginTime.Contains(loginTime) && lo.LogoutTime.Contains(logoutTime))
                           .OrderByDescending(lo => lo.LoginTime)
                           .Select(lo => new { lo.LoginPC, lo.LoginTime, lo.LogoutTime, lo.UserName, lo.SystemName });

            System.Data.DataTable dt = new System.Data.DataTable();
            dt.Columns.Add("登陆电脑", typeof(string));
            dt.Columns.Add("登录时间", typeof(string));
            dt.Columns.Add("退出时间", typeof(string));
            dt.Columns.Add("登录的用户名", typeof(string));
            dt.Columns.Add("登录的系统", typeof(string));
            foreach (var item in loginlog)
            {
                dt.Rows.Add
                (
                    item.LoginPC,
                    item.LoginTime,
                    item.LogoutTime,
                    item.UserName,
                    item.SystemName
                );
            }
            return(dt);
        }
Exemple #19
0
        /// <summary>
        /// Created by :Bhushan Dod
        /// Created Date :05/26/2015
        /// Alert on screen on admin and manager if any employee idle for 30 min
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public dynamic EmployeeIdleStatus(long locationId, long userId)
        {
            dynamic result = null;
            workorderEMSEntities _workorderEMSEntities = new workorderEMSEntities();

            try
            {
                objLoginLogRepository = new LoginLogRepository();
                List <EmailToManagerModel> objEmailReturn = new List <EmailToManagerModel>();
                var employeedata = _workorderEMSEntities.UserRegistrations.Where(x => x.UserId == userId &&
                                                                                 x.IsDeleted == false &&
                                                                                 x.UserType == 3).FirstOrDefault();
                var logout = _workorderEMSEntities.LoginLogs.Where(x => x.LocationId == locationId &&
                                                                   x.UserID == userId &&
                                                                   x.IsActive == false).OrderByDescending(a => a.CreatedOn).FirstOrDefault();
                //if (logout != null)
                //{
                //    return result;
                //}
                //else
                //{
                result = objLoginLogRepository.IdleStatusOfEmployee(userId, locationId);
                if (result.Response != 0)
                {                                                                                                //send email and push notification to manager
                    objEmailReturn = objEmailLogRepository.SendEmailToManagerForItemMissing(locationId, userId); //function return data according to location and username
                    if (objEmailReturn.Count() > 0 && result.ResponseMessage == "Employee Idle")
                    {
                        foreach (var item in objEmailReturn)
                        {
                            var         time           = item.IdleTimeLimit;
                            EmailHelper objEmailHelper = new EmailHelper();
                            objEmailHelper.emailid     = item.ManagerEmail;
                            objEmailHelper.ManagerName = item.ManagerName;
                            //if (item.IdleTimeLimit.Value.ToString("tt") == "AM" && item.IdleTimeLimit.Value.ToString("hh") == "12")
                            //{
                            //    objEmailHelper.ProblemDesc =  "00:"+item.IdleTimeLimit.Value.ToString("mm")+ " (hr:mm)";
                            //}
                            //else{
                            //    objEmailHelper.ProblemDesc = item.IdleTimeLimit.Value.ToString("hh:mm") + " (hr:mm)";
                            //}
                            //"30 Min";// this is hardcoded time for all employee
                            objEmailHelper.ProblemDesc  = item.IdleTimeLimit.Value.ToString("HH:mm") + " (hr:mm)";
                            objEmailHelper.LocationName = item.LocationName;
                            objEmailHelper.UserName     = item.UserName;
                            objEmailHelper.MailType     = "EMPLOYEEIDLE";
                            objEmailHelper.SentBy       = item.RequestBy;
                            objEmailHelper.LocationID   = item.LocationID;

                            bool IsSent = objEmailHelper.SendEmailWithTemplate();
                            if (IsSent == true)
                            {
                                objEmailog = new EmailLog();
                                try
                                {
                                    objEmailog.CreatedBy   = item.RequestBy;
                                    objEmailog.CreatedDate = DateTime.UtcNow;
                                    objEmailog.DeletedBy   = null;
                                    objEmailog.DeletedOn   = null;
                                    objEmailog.LocationId  = item.LocationID;
                                    objEmailog.ModifiedBy  = null;
                                    objEmailog.ModifiedOn  = null;
                                    objEmailog.SentBy      = item.RequestBy;
                                    objEmailog.SentEmail   = item.ManagerEmail;
                                    objEmailog.Subject     = objEmailHelper.Subject;
                                    objEmailog.SentTo      = item.ManagerUserId;
                                    objEmailLogRepository.SaveEmailLog(objEmailog);
                                }
                                catch (Exception)
                                {
                                    throw;
                                }
                            }
                            if (item.DeviceId != null && item.DeviceId.Trim() != "")
                            {
                                message = PushNotificationMessages.EmployeeIdle(item.LocationName, item.UserName);
                                PushNotification.GCMAndroid(message, item.DeviceId, objEmailHelper);
                            }
                        }
                    }
                }
                //}
            }
            catch (Exception ex)
            {
                Exception_B.Exception_B.exceptionHandel_Runtime(ex, " public dynamic EmployeeIdleStatus(string id)", "Exception while fetching employee idle status", locationId);
            }
            return(result);
        }
Exemple #20
0
        /// <summary>Save DAR for QRC Type
        /// <CreatedFor>For Insert QRC Type</CreatedFor>
        /// <CreatedBy>Bhusha n Dod</CreatedBy>
        /// <CreatedOn>Feb-13-2015</CreatedOn>
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public ServiceDARModel SaveDARDetails(ServiceDARModel obj)
        {
            ObjUserRepository = new UserRepository();
            objDARRepository  = new DARRepository();
            workorderEMSEntities _workorderEMSEntities = new workorderEMSEntities();
            bool   IsContinuesWOExist        = false;
            string startTimeDAR              = "";
            string endTimeDAR                = "";
            string activityString            = string.Empty;
            string activityStringForWONumber = string.Empty;

            try
            {
                if (obj.LocationId > 0 && obj.ServiceAuthKey != null)
                {
                    var authuser = ObjUserRepository.GetSingleOrDefault(x => x.ServiceAuthKey == obj.ServiceAuthKey && x.IsDeleted == false);
                    if (obj.ActivityDetails != null)
                    {
                        activityString            = obj.ActivityDetails.Substring(obj.ActivityDetails.LastIndexOf(',') + 1);
                        activityStringForWONumber = activityString.Substring(activityString.LastIndexOf('r') + 1);
                    }
                    //322 and 323 is used for continues pause  and resume
                    var IsPauseResume = obj.TaskType == Convert.ToInt64(ContinuesPauseResume.Pause) ? true : obj.TaskType == Convert.ToInt64(ContinuesPauseResume.Resume) ? true : false;
                    if (authuser != null && authuser.UserId > 0 && obj.TaskType != 280)
                    {
                        //TO find Any continues WO complete before Notification Arrival
                        var clientdt = DateTime.UtcNow.GetClientDateTimeNow();
                        //flag status for if user filter record in time span so to date is till midnight.
                        bool     isUTCDay        = true;
                        DateTime _fromDate       = clientdt.Date;
                        DateTime _toDate         = clientdt.AddDays(1).Date;
                        var      todayDARDetails = _workorderEMSEntities.DARDetails.Where(x => x.UserId == authuser.UserId &&
                                                                                          x.LocationId == obj.LocationId &&
                                                                                          x.IsDeleted == false &&
                                                                                          x.CreatedOn >= _fromDate &&
                                                                                          (x.TaskType == 320 ||
                                                                                           x.TaskType == 321) &&
                                                                                          x.CreatedOn <= _toDate).ToList();
                        foreach (var item in todayDARDetails)
                        {
                            var darActivity = item.ActivityDetails;
                            var stringCon   = darActivity.Substring(darActivity.LastIndexOf(',') + 1);
                            var stringCon1  = stringCon.Substring(stringCon.LastIndexOf('r') + 1);
                            if (activityStringForWONumber == stringCon1)
                            {
                                IsContinuesWOExist = true;
                                startTimeDAR       = item.StartTime.ToString();
                                endTimeDAR         = item.EndTime.ToString();
                            }
                        }
                        if (IsContinuesWOExist == true && IsPauseResume == false)
                        {
                            if (startTimeDAR != "" && endTimeDAR == "")
                            {
                                obj.Response        = Convert.ToInt32(ServiceResponse.NoRecord, CultureInfo.CurrentCulture);
                                obj.ResponseMessage = CommonMessage.AlreadyContinuesWOStart(activityStringForWONumber);
                            }
                            else if (startTimeDAR == "" && endTimeDAR != "")
                            {
                                obj.Response        = Convert.ToInt32(ServiceResponse.NoRecord, CultureInfo.CurrentCulture);
                                obj.ResponseMessage = CommonMessage.AlreadyContinuesWOComplete(activityStringForWONumber);
                            }
                        }
                        else
                        {
                            //obj.ActivityDetails = DarMessage.QrcVehicleCleaning(obj.UserName);
                            var result = objDARRepository.SaveDARDetails(obj);
                            if (result != null && result > 0)
                            {
                                obj.Response        = Convert.ToInt32(ServiceResponse.SuccessResponse, CultureInfo.CurrentCulture);
                                obj.DARId           = result;
                                obj.ResponseMessage = CommonMessage.SaveSuccessMessage();
                            }
                            else
                            {
                                obj.Response        = Convert.ToInt32(ServiceResponse.ExeptionResponse, CultureInfo.CurrentCulture);
                                obj.DARId           = result;
                                obj.ResponseMessage = CommonMessage.WrongParameterMessage();
                            }
                        }
                    }
                    else if (authuser != null && authuser.UserId > 0 && obj.TaskType == 280)
                    {
                        var objLoginLogRepository = new LoginLogRepository();
                        obj.ActivityDetails = DarMessage.ShiftEnd(obj.UserName);
                        var result = objDARRepository.SaveDARDetails(obj);
                        if (result != null && result > 0)
                        {
                            var loginlog = objLoginLogRepository.GetSingleOrDefault(x => x.UserID == authuser.UserId && x.LogId == obj.LogId && x.IsDeleted == false && x.IsActive == true);
                            if (loginlog.LogId != 0)
                            {
                                loginlog.IsActive = false;
                                loginlog.ShiftEnd = DateTime.Now;
                                objLoginLogRepository.Update(loginlog);
                                objLoginLogRepository.SaveChanges();
                            }
                            var data = ObjUserRepository.GetSingleOrDefault(v => v.UserId == obj.UserId && v.IsDeleted == false);
                            if (data != null)
                            {
                                data.ModifiedBy    = obj.UserId;
                                data.ModifiedDate  = DateTime.UtcNow;
                                data.IdleTimeLimit = Convert.ToDateTime("00:30");
                                ObjUserRepository.Update(data);

                                obj.Response        = Convert.ToInt32(ServiceResponse.SuccessResponse, CultureInfo.CurrentCulture);
                                obj.DARId           = result;
                                obj.ResponseMessage = CommonMessage.SaveSuccessMessage();
                            }
                        }
                        else
                        {
                            obj.Response        = Convert.ToInt32(ServiceResponse.ExeptionResponse, CultureInfo.CurrentCulture);
                            obj.DARId           = result;
                            obj.ResponseMessage = CommonMessage.WrongParameterMessage();
                        }
                    }
                    else
                    {
                        obj.Response        = Convert.ToInt32(ServiceResponse.InvalidSessionResponse, CultureInfo.CurrentCulture);
                        obj.ResponseMessage = CommonMessage.InvalidUser();
                    }
                }
                else
                {
                    obj.Response        = Convert.ToInt32(ServiceResponse.FailedResponse, CultureInfo.CurrentCulture);
                    obj.ResponseMessage = CommonMessage.WrongParameterMessage();
                }
            }
            catch (Exception)
            { throw; }
            return(obj);
        }
 public LoginLogService(LoginLogRepository repository)
 {
     _repository = repository;
 }