public static CResultLogin Login(string sUserName, string sPassword, string sMode)
    {
        CResultLogin result = new CResultLogin();
        UserAcc      ua     = new UserAcc();

        if (!string.IsNullOrEmpty(sUserName))
        {
            PTTGC_EPIEntities db = new PTTGC_EPIEntities();
            sUserName = sUserName.Trims();
            sPassword = sPassword.Trims();
            var query = db.mTUser.FirstOrDefault(w => w.Username == sUserName && w.cDel == "N" && w.cActive == "Y");
            if (query != null)
            {
                if (sPassword == ConfigurationManager.AppSettings["DefaultPass"].ToString())
                {
                    var qRole = db.mTUserInRole.FirstOrDefault(w => w.nUID == query.ID);
                    if (qRole != null)
                    {
                        var qRoleName = db.mTUserRole.FirstOrDefault(w => w.ID == qRole.nRoleID);
                        ua.nUserID         = query.ID;
                        ua.sFullName       = query.Firstname + " " + query.Lastname;
                        ua.nRoleID         = qRole.nRoleID;
                        ua.sActionRoleName = qRoleName != null ? qRoleName.Name : "";
                        UserAcc.SetObjUser(ua);
                        result.Status = SystemFunction.process_Success;
                    }
                    else
                    {
                        result.Status = SystemFunction.process_Failed;
                        result.Msg    = "Not found role !";
                    }
                }
                else
                {
                    result.Status = SystemFunction.process_Failed;
                    result.Msg    = "Incorrect pasword !";
                }
            }
            else
            {
                result.Status = SystemFunction.process_Failed;
                result.Msg    = "Not found user !";
            }
        }
        return(result);
    }
Пример #2
0
    public static CResultLogin Login(string sUserName, string sPassword, string sMode)
    {
        CResultLogin result = new CResultLogin();
        UserAcc      ua     = new UserAcc();

        if (!string.IsNullOrEmpty(sUserName))
        {
            PTTGC_EPIEntities db = new PTTGC_EPIEntities();
            sUserName = sUserName.Trims();
            sPassword = sPassword.Trims();
            int nUserIDSuperAdmin = SystemFunction.ParseInt(ConfigurationManager.AppSettings["UserIDAdmin"].ToString());
            var query             = db.mTUser.FirstOrDefault(w => w.Username == sUserName && w.cDel == "N" && w.cActive == "Y");
            if (query != null && query.ID == nUserIDSuperAdmin)
            {
                if (sPassword == ConfigurationManager.AppSettings["SupperAdminPWD"].ToString())
                {
                    ua.nUserID         = query.ID;
                    ua.sFullName       = query.Firstname + " " + query.Lastname;
                    ua.nRoleID         = 1;
                    ua.sActionRoleName = "System Admin";
                    UserAcc.SetObjUser(ua);
                    result.Status = SystemFunction.process_Success;
                }
                else
                {
                    result.Status = SystemFunction.process_Failed;
                    result.Msg    = "Incorrect password !";
                }
            }
            else
            {
                var resultLogin = UserAcc.Login(sUserName, sPassword, sMode);
                result.Msg       = resultLogin.Msg;
                result.nUserID   = resultLogin.nUserID;
                result.Status    = resultLogin.Status;
                result.TDataRole = resultLogin.TDataRole;
            }
        }
        return(result);
    }
        private APIResult GetCustomerSessionId()
        {
            try
            {
                APIResult result = new APIResult();

                var authenticatedUser = _authenticationService.GetAuthenticatedUser();

                if (authenticatedUser != null)
                {
                    dynamic loyalzooPart = authenticatedUser.ContentItem.As <LoyalzooUserPart>();

                    if (loyalzooPart != null)
                    {
                        if (!String.IsNullOrWhiteSpace(loyalzooPart.CustomerSessionId))
                        {
                            result.success = true;
                            result.message = "";
                            result.data    = loyalzooPart.CustomerSessionId;

                            return(result);
                        }
                        else if (!String.IsNullOrWhiteSpace(loyalzooPart.LoyalzooUsername) && !String.IsNullOrWhiteSpace(loyalzooPart.LoyalzooPassword))
                        {
                            ConfigEnv         configData = GetConfigData();
                            ILoyalzooCustomer customer   = new Customer();

                            CLogin loginData = new CLogin();
                            loginData.username = loyalzooPart.LoyalzooUsername;
                            loginData.password = Encoding.UTF8.GetString(_encryptionService.Decode(Convert.FromBase64String(loyalzooPart.LoyalzooPassword)));
                            CResultLogin loginRequest = customer.Login(configData, loginData);

                            if (loginRequest.success)
                            {
                                loyalzooPart.CustomerSessionId = loginRequest.response.session_id;

                                result.success = true;
                                result.message = "";
                                result.data    = loginRequest.response.session_id;

                                return(result);
                            }
                            else
                            {
                                return new APIResult {
                                           success = false, data = null, message = loginRequest.Errore.response
                                }
                            };
                        }
                        else if (!String.IsNullOrWhiteSpace(loyalzooPart.LoyalzooUsername) || !String.IsNullOrWhiteSpace(loyalzooPart.LoyalzooPassword))
                        {
                            return new APIResult {
                                       success = false, data = null, message = "Cannot authenticate the user. The Loyalzoo data associated with the user is incomplete."
                            }
                        }
                        ;
                        else
                        {
                            return new APIResult {
                                       success = false, data = null, message = "The user is not associated to any Loyalzoo data. Please call the LoyalzooRegistration method first."
                            }
                        };
                    }
                    else
                    {
                        return new APIResult {
                                   success = false, data = null, message = "The user is not configured to use Loyalzoo."
                        }
                    };
                }
                else
                {
                    return new APIResult {
                               success = false, data = null, message = "Invalid cookie."
                    }
                };
            }
            catch (Exception e)
            {
                APIResult exceptionData = new APIResult();

                exceptionData.success = false;
                exceptionData.message = e.Message;
                exceptionData.data    = null;

                return(exceptionData);
            }
        }
    public static CResultLogin Login(string sUserName, string sPassword, string sMode)
    {
        CResultLogin      result  = new CResultLogin();
        PTTGC_EPIEntities db      = new PTTGC_EPIEntities();
        List <TDataRole>  lstData = new List <TDataRole>();

        if (!string.IsNullOrEmpty(sUserName) && (string.IsNullOrEmpty(sMode) ? !string.IsNullOrEmpty(sPassword) : true))
        {
            string sPassEncypt = STCrypt.Encrypt(sPassword);
            var    User        = db.mTUser.Where(w => w.Username == sUserName && (string.IsNullOrEmpty(sMode) ? w.PasswordEncrypt == sPassEncypt : true) && w.cDel == "N" && w.cActive == "Y").ToList();
            if (User.Any())
            {
                int nUserID     = User.Any() ? User.First().ID : 0;
                int nRoleID     = 0;
                var lst_Role    = db.mTUserInRole.Where(w => w.nUID == nUserID).Select(s => s.nRoleID).Distinct().ToList();
                var lstDataRole = db.mTUserRole.ToList();
                if (lst_Role.Count > 1)
                {
                    result.Status    = SystemFunction.process_Failed;
                    result.Msg       = "muti";
                    result.nUserID   = nUserID;
                    lstData          = GetRolePermission(nUserID + "");
                    result.TDataRole = lstData;
                    return(result);
                }
                else
                {
                    if (lst_Role.Any())
                    {
                        nRoleID = lst_Role.First();
                    }

                    string sNameRole = lstDataRole.Any() ? lstDataRole.First(w => w.ID == nRoleID).Name : "";

                    UserAcc ua = (new UserAcc
                    {
                        nUserID = nUserID,
                        nRoleID = nRoleID,
                        sFullName = User.First().Firstname + ' ' + User.First().Lastname,
                        sActionRoleName = sNameRole,
                    });
                    UserAcc.SetObjUser(ua);
                    result.Status = SystemFunction.process_Success;
                }
            }
            else
            {
                if (!string.IsNullOrEmpty(sMode))
                {
                    result.Status = SystemFunction.process_Failed;
                    result.Msg    = "User account not Register.";
                }
                else
                {
                    result.Status = SystemFunction.process_Failed;
                    result.Msg    = "User account and password incorrect.";
                }
            }
        }
        return(result);
    }