public async Task<IActionResult> LoginDetails(LoginTrackerdetails data)
 {
     CommonResponse response = login.LoginDetails(data);
     return Ok(response);
 }
Пример #2
0
        ///// <summary>
        ///// Login Details
        ///// </summary>
        ///// <param name="userName"></param>
        ///// <param name="password"></param>
        ///// <returns></returns>
        //public CommonResponse LoginDetails(string userName,string password)
        //{
        //    CommonResponse obj = new CommonResponse();
        //    try
        //    {
        //        var check = (from wf in db.TblOperatorDetails
        //                     where wf.UserName == userName && wf.Password == password && wf.IsDeleted == 0
        //                     select new
        //                     {
        //                         wf.OpId,
        //                         wf.OperatorName,
        //                         wf.RoleId,
        //                     }).FirstOrDefault();

        //        if(check != null)
        //        {
        //            obj.isStatus = true;
        //            obj.response = check;
        //        }
        //        else
        //        {
        //            obj.isStatus = false;
        //            obj.response = ResourceResponse.NoItemsFound;
        //        }
        //    }
        //    catch (Exception e)
        //    {
        //        obj.isStatus = false;
        //        obj.response = ResourceResponse.FailureMessage;
        //    }
        //    return obj;
        //}

        /// <summary>
        /// Login Details
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public CommonResponse LoginDetails(LoginTrackerdetails data)
        {
            CommonResponse obj            = new CommonResponse();
            CommonFunction commonFunction = new CommonFunction();

            try
            {
                string shift         = commonFunction.GetCurrentShift();
                string correctedDate = commonFunction.GetCorrectedDate();
                int    machineId     = data.machineId;

                CommonResponse          commonResponse        = new CommonResponse();
                List <LoginOperatorDet> loginOperatorDetsList = new List <LoginOperatorDet>();

                var loginTrackerDet = commonFunction.GetLoginTrackerDetailsLastRow(correctedDate, data.machineId);

                if (loginTrackerDet == null)
                {
                    var check = (from wf in db.UnitworkccsTbloperatordetails
                                 where wf.UserName == data.userName && wf.Password == data.password && wf.IsDeleted == 0
                                 select new
                    {
                        wf.OpId,
                        wf.OperatorName,
                        wf.RoleId,
                    }).FirstOrDefault();

                    if (check != null)
                    {
                        if (check.RoleId == 6 && data.pageName == "operatorPage")
                        {
                            UnitworkccsLogintrackerdetails loginTrackerDetails = new UnitworkccsLogintrackerdetails();
                            loginTrackerDetails.MachineId     = machineId;
                            loginTrackerDetails.OperatorId    = check.OpId;
                            loginTrackerDetails.LoginDateTime = DateTime.Now;
                            loginTrackerDetails.IsLoggedIn    = 1;
                            loginTrackerDetails.Shift         = shift;
                            loginTrackerDetails.CorrectedDate = correctedDate;
                            db.UnitworkccsLogintrackerdetails.Add(loginTrackerDetails);
                            db.SaveChanges();

                            LoginOperatorDet loginOperatorDet = new LoginOperatorDet();
                            loginOperatorDet.opId         = check.OpId;
                            loginOperatorDet.operatorName = check.OperatorName;
                            loginOperatorDet.roleId       = check.RoleId;
                            loginOperatorDet.machineName  = db.UnitworkccsTblmachinedetails.Where(m => m.MachineId == machineId).Select(m => m.MachineName).FirstOrDefault();
                            DateTime LoginDateTime = Convert.ToDateTime(loginTrackerDetails.LoginDateTime);
                            loginOperatorDet.loginTime     = LoginDateTime.ToString("yyyy-MM-dd HH:mm:ss");
                            loginOperatorDet.shift         = loginTrackerDetails.Shift;
                            loginOperatorDet.correctedDate = loginTrackerDetails.CorrectedDate;
                            loginOperatorDetsList.Add(loginOperatorDet);

                            obj.isStatus = true;
                            obj.response = loginOperatorDetsList;
                        }
                        else if (check.RoleId == 9 && data.pageName == "ticketManagement")
                        {
                            UnitworkccsLogintrackerdetails loginTrackerDetails = new UnitworkccsLogintrackerdetails();
                            loginTrackerDetails.MachineId     = machineId;
                            loginTrackerDetails.OperatorId    = check.OpId;
                            loginTrackerDetails.LoginDateTime = DateTime.Now;
                            loginTrackerDetails.IsLoggedIn    = 1;
                            loginTrackerDetails.Shift         = shift;
                            loginTrackerDetails.CorrectedDate = correctedDate;
                            db.UnitworkccsLogintrackerdetails.Add(loginTrackerDetails);
                            db.SaveChanges();

                            LoginOperatorDet loginOperatorDet = new LoginOperatorDet();
                            loginOperatorDet.opId         = check.OpId;
                            loginOperatorDet.operatorName = check.OperatorName;
                            loginOperatorDet.roleId       = check.RoleId;
                            loginOperatorDet.machineName  = db.UnitworkccsTblmachinedetails.Where(m => m.MachineId == machineId).Select(m => m.MachineName).FirstOrDefault();
                            DateTime LoginDateTime = Convert.ToDateTime(loginTrackerDetails.LoginDateTime);
                            loginOperatorDet.loginTime     = LoginDateTime.ToString("yyyy-MM-dd HH:mm:ss");
                            loginOperatorDet.shift         = loginTrackerDetails.Shift;
                            loginOperatorDet.correctedDate = loginTrackerDetails.CorrectedDate;
                            loginOperatorDetsList.Add(loginOperatorDet);

                            obj.isStatus = true;
                            obj.response = loginOperatorDetsList;
                        }
                        else
                        {
                            obj.isStatus = false;
                            obj.response = "Not Authorized User";
                        }
                    }
                    else
                    {
                        obj.isStatus = false;
                        obj.response = ResourceResponse.NoItemsFound;
                    }
                }
                else
                {
                    obj.isStatus = false;
                    obj.response = "Already Logged In";
                }
            }
            catch (Exception e)
            {
                log.Error(e); if (e.InnerException != null)
                {
                    log.Error(e.InnerException.ToString());
                }
                obj.isStatus = false;
                obj.response = ResourceResponse.FailureMessage;
            }
            return(obj);
        }