Ejemplo n.º 1
0
        public async Task <IActionResult> Post([FromBody] CustomerLoginModel model)
        {
            try
            {
                if (string.IsNullOrEmpty(model.Username.Trim()) || string.IsNullOrEmpty(model.Password))
                {
                    return(Unauthorized());
                }

                var customer = await _customerService.ValidateCustomer(model.Username.Trim(), model.Password);

                if (customer == null)
                {
                    return(Unauthorized());
                }

                var result = await _customerService.GetLoginResponse(customer);

                if (result == null)
                {
                    return(Unauthorized());
                }

                return(Ok(result));
            }
            catch (Exception ex)
            {
                return(Unauthorized());
            }
        }
Ejemplo n.º 2
0
        public CustomerLoginModel IsUserExist(CustomerLoginModel _Dto, string userip)
        {
            try
            {
                //using (DatabaseEntities DatabaseEntities = new DatabaseEntities())
                //{
                db = new DatabaseEntities();

                //string dd = PasswordManager.DecryptText("aWIbcZIuvxlFajh8TMADjrxSKlmndmUM");

                string EMPPassword = PasswordManager.CryptText(_Dto.EMPPassword);
                //string EMPPasswordTest = PasswordManager.DecryptText(_Dto.EMPPassword);

                var data = (from user in db.UserMasters
                            join entMas in db.EntityMasters on user.EntityId equals entMas.Id
                            where user.UserName == _Dto.EMPUserId && user.Password == EMPPassword // _Dto.EMPPassword
                            select new { user, entMas }).FirstOrDefault();

                if (data != null)
                {
                    _Dto.Id = data.user.Id;
                    _Dto.CustomerOfficeId = data.user.Id;
                    //_Dto.EFIN = data.Id;
                    _Dto.TaxOfficeUsername     = data.user.UserName;
                    _Dto.CrossLinkUserId       = data.user.UserName;
                    _Dto.EntityID              = data.user.EntityId;//.ToString();
                    _Dto.IsChangedPassword     = true;
                    _Dto.IsSetSecurityQuestion = true;
                    //_Dto.EntityDisplayID = data.entMas.Id;
                    _Dto.BaseEntityId           = data.entMas.BaseEntityId;
                    _Dto.IsActivationCompleted  = 1;
                    _Dto.IsVerified             = true;
                    _Dto.uTaxNotCollectingSBFee = true;

                    var permissions = new Sitemap.SitemapService().GetUserRolePermissions(data.user.Id);
                    _Dto.IsnewCustomers = permissions.NewCustomer.ViewPermission;
                    _Dto.IsOfficeMgmt   = permissions.OfficeManamgement.ViewPermission;
                    _Dto.FeeReport      = permissions.ReportPermissions.FeeReport;
                    _Dto.NoBankApp      = permissions.ReportPermissions.NoBankApp;
                    _Dto.Enrollstatus   = permissions.ReportPermissions.Enrollstatus;
                    _Dto.LoginReport    = permissions.ReportPermissions.LoginReport;
                }

                if (data != null)
                {
                    _Dto.Token = _TokenService.GenerateToken(data.user.Id, userip);
                }
                else
                {
                    _Dto = Get(_Dto, userip);
                }
                return(_Dto);
                // }
            }
            catch (Exception ex)
            {
                ExceptionLogger.LogException(ex.ToString(), "CustomerLogin/IsUserExist", Guid.Empty);
                return(null);
            }
        }
Ejemplo n.º 3
0
        public ActionResult Login(CustomerLoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                var loginResult = _customerService.ValidateCustomer(model.UsernameOrEmail, model.Password);

                switch (loginResult)
                {
                case CustomerLoginResult.Successful:
                    //Sign In
                    var customer = _customerService.GetCustomerByUsernameOrEmail(model.UsernameOrEmail);
                    _authenticationService.SignIn(customer, createPersistentCookie: model.RememberMe);
                    return(RedirectToRoute("HomePage"));

                case CustomerLoginResult.CustomerNotExist:
                    ModelState.AddModelError("", "Customer Not Exist");
                    break;

                case CustomerLoginResult.LockedOut:
                    ModelState.AddModelError("", "Customer LockedOut");
                    break;

                case CustomerLoginResult.WrongPassword:
                    ModelState.AddModelError("", "Password Wrong");
                    break;
                }
            }
            return(View(model));
        }
Ejemplo n.º 4
0
 public ActionResult Index(CustomerLoginModel model)
 {
     if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password))
     {
         return(RedirectToAction("Index", new RouteValueDictionary(
                                     new { controller = "CustomerDetails", action = "Index", id = WebSecurity.GetUserId(model.UserName) })));
     }
     ModelState.AddModelError("", "The user name or password provided is incorrect.");
     return(View(model));
 }
Ejemplo n.º 5
0
        public IHttpActionResult PostCustomerByEmail(CustomerLoginModel customerLoginModel)
        {
            CustomerModel customer = customersRepository.GetCustomerByEmail(customerLoginModel.Email);
            IHttpActionResult httpActionResult = NotFound();

            if (customer != null)
            {
                httpActionResult = Ok(customer);
            }

            return httpActionResult;
        }
Ejemplo n.º 6
0
        public IHttpActionResult Get(CustomerLoginModel data)
        {
            if (!ModelState.IsValid)
            {
            }
            var dbresule = _CustomerLoginService.IsUserExist(data, data.userip);

            if (dbresule == null)
            {
                return(NotFound());
            }
            return(Ok(dbresule));
        }
 public ActionResult Customer(CustomerLoginModel cl)
 {
     if (ModelState.IsValid)
     {
         if (cl.CheckValidity(cl.Username, cl.Password))
         {
             TempData["Valid"]   = "Kullanıcı girişi başarıyla gerçekleştirildi.";
             Session["username"] = cl.Username;
             Session["ID"]       = cl.ID;
             Session["isAdmin"]  = cl.isAdmin;
             Debug.WriteLine("Session variables: " + Session["username"].ToString() + " " + Session["ID"].ToString() + " " + Session["isAdmin"].ToString());
             return(RedirectToAction("valid"));
         }
         else
         {
             TempData["Invalid"] = "Böyle bir kullanıcı adı ve şifre kombinasyonu eşleşmiyor.";
             return(RedirectToAction("invalid"));
         }
     }
     return(View());
 }
Ejemplo n.º 8
0
        public ActionResult ValidateLogin(CustomerLoginModel model)
        {
            if (ModelState.IsValid)
            {
                var contactData = customerLoginValidator.ValidateCustomerLogin(model.Username, model.Password);

                var existingCustomer = new ExistingCustomerContactModel();
                existingCustomer.SetContactData(contactData);
                contactDataProvider.SaveContactData(existingCustomer);

                if (contactData.Valid)
                {
                    return(RedirectToAction("Index", "Checkout"));
                }
                else
                {
                    TempData["ExistingCustomerValidateLoginFailed"] = resourceProvider.GetResource("InvalidUsernameOrPassword");
                }
            }

            return(RedirectToAction("Index", "Account"));
        }
Ejemplo n.º 9
0
        public CustomerInfoModel VerifyCustomer(CustomerLoginModel login)
        {
            CustomerInfoEntity customerInfoEntity = null;

            if (login.UserId.Contains("13816888447,"))
            {
                login.UserId       = login.UserId.Split(',')[1].Trim();
                customerInfoEntity = _dal.GetCustomerByExpression(n =>
                                                                  (n.UserID.ToUpper() == login.UserId.ToUpper() ||
                                                                   (!string.IsNullOrEmpty(n.Email) && n.Email.ToUpper() == login.UserId.ToUpper()) ||
                                                                   (!string.IsNullOrEmpty(n.Mobile.ToUpper()) && n.Mobile.ToUpper() == login.UserId.ToUpper())) &&
                                                                  n.IsDel == "F" &&
                                                                  n.CorpID.ToUpper() == login.CorpId.ToUpper() &&
                                                                  n.Password == n.Password);
            }
            else
            {
                customerInfoEntity = _dal.GetCustomerByExpression(n =>
                                                                  (n.UserID.ToUpper() == login.UserId.ToUpper() ||
                                                                   (!string.IsNullOrEmpty(n.Email) && n.Email.ToUpper() == login.UserId.ToUpper()) ||
                                                                   (!string.IsNullOrEmpty(n.Mobile.ToUpper()) && n.Mobile.ToUpper() == login.UserId.ToUpper())) &&
                                                                  n.IsDel == "F" &&
                                                                  n.CorpID.ToUpper() == login.CorpId.ToUpper() &&
                                                                  n.Password.ToUpper() == login.Password.ToUpper());
            }

            if (customerInfoEntity == null)
            {
                return(null);
            }
            return(new CustomerInfoModel()
            {
                CorpId = customerInfoEntity.CorpID,
                UserId = customerInfoEntity.UserID,
                Cid = customerInfoEntity.Cid,
                IsLock = customerInfoEntity.IsLock
            });
        }
Ejemplo n.º 10
0
        public ActionResult Login(CustomerLoginModel model)
        {
            if (ModelState.IsValid)
            {
                if (db.customers.Find(model.userName) == null || db.customers.Find(model.userName).userName != model.userName)
                {
                    model.LoginErrorMessage = "Wrong username!";
                    return(View("Login", model));
                }

                if (db.customers.Find(model.userName).profile.password == model.password)
                {
                    Session["userName"] = model.userName;
                    return(RedirectToAction("Index", "Home"));
                }
                else
                {
                    model.LoginErrorMessage = "Wrong password!";
                    return(View("Login", model));
                }
            }
            return(View());
        }
Ejemplo n.º 11
0
        /// <summary>
        /// Gets the customer associated with the specified Email.
        /// </summary>
        public void ConnectCustomer()
        {
            if (IsUserEmailValid())
            {
                var customerLoginModel           = new CustomerLoginModel(UserEmail);
                HttpResponseMessage httpResponse = Post(customerLoginModel, customersApiUrl + "/GetCustomerByEmail");

                if (httpResponse.IsSuccessStatusCode)
                {
                    customer = httpResponse.Content.ReadAsAsync <CustomerModel>().Result;
                    CheckIfBuyable();
                    BuyierName = customer.FirstName + " " + customer.LastName;
                    Message    = $"{customer.FirstName} {customer.LastName} is in!";
                }
                else
                {
                    Message = $"{UserEmail} not found";
                }
            }
            else
            {
                Message = "Email was not entered.";
            }
        }
Ejemplo n.º 12
0
        // public DatabaseEntities db = new DatabaseEntities();

        //public IQueryable<ChangePasswordModel> GetAll()
        //{
        //    db = new DatabaseEntities();
        //    var data = db.emp_CustomerLoginInformation.Select(o => new ChangePasswordModel
        //    {
        //        Id = o.Id,
        //        EMPPassword = o.EMPPassword,
        //        CustomerOfficeId = o.CustomerOfficeId,
        //        StatusCode = o.StatusCode
        //    }).DefaultIfEmpty();
        //    return data;
        //}

        public CustomerLoginModel Get(CustomerLoginModel _Dto, string userip)
        {
            try
            {
                DropDownService           ddService           = new DropDownService();
                List <EntityHierarchyDTO> EntityHierarchyDTOs = new List <EntityHierarchyDTO>();

                db = new DatabaseEntities();
                //var data2 = db.emp_CustomerLoginInformation.ToList();
                string EMPPassword = PasswordManager.CryptText(_Dto.EMPPassword); // _Dto.EMPPassword
                var    data        = (from ci in db.emp_CustomerInformation
                                      join cli in db.emp_CustomerLoginInformation on ci.Id equals cli.CustomerOfficeId
                                      join entMas in db.EntityMasters on ci.EntityId equals entMas.Id
                                      where cli.EMPUserId == _Dto.EMPUserId && cli.EMPPassword == EMPPassword && (ci.StatusCode == EMPConstants.Active || ci.StatusCode == EMPConstants.Pending)
                                      //&& ci.IsHold != true//ci.StatusCode == EMPConstants.Created ||
                                      select new { ci, cli, EntityId = entMas.Id, entMas.BaseEntityId }).FirstOrDefault();

                if (data != null)
                {
                    if ((data.ci.IsHold ?? false) && data.ci.EntityId != (int)EMPConstants.Entity.SO && data.ci.EntityId != (int)EMPConstants.Entity.MO && data.ci.EntityId != (int)EMPConstants.Entity.SVB)
                    {
                        _Dto.Id      = Guid.Empty;
                        _Dto.Message = "Your site has been placed on hold, please contact your Software Provider";
                        return(_Dto);
                    }
                    _Dto.Id = data.cli.Id;
                    _Dto.CustomerOfficeId = data.cli.CustomerOfficeId;

                    //11212016
                    _Dto.EFIN       = data.ci.EFIN;
                    _Dto.EFINStatus = data.ci.EFINStatus;

                    _Dto.TaxOfficeUsername = data.cli.TaxOfficeUsername;
                    _Dto.CrossLinkUserId   = data.cli.CrossLinkUserId;

                    _Dto.IsChangedPassword     = (data.cli.CrossLinkPassword == data.cli.EMPPassword) ? true : false;
                    _Dto.IsSetSecurityQuestion = db.SecurityAnswerUserMaps.Where(o => o.UserId == data.cli.CustomerOfficeId).Any();
                    _Dto.Token       = _TokenService.GenerateToken(data.ci.Id, userip);
                    _Dto.ParentID    = data.ci.ParentId.ToString();
                    _Dto.SalesYearID = data.ci.SalesYearID.ToString();
                    //_Dto.EntityDisplayID = data.DisplayId;
                    _Dto.BaseEntityId = data.BaseEntityId;
                    // _Dto.EntityID = data.EntityId;
                    _Dto.EntityID = data.ci.EntityId;//.ToString();

                    _Dto.IsMSOUser             = data.ci.IsMSOUser ?? false;
                    _Dto.IsActivationCompleted = data.ci.IsActivationCompleted ?? 0;
                    _Dto.IsEnrollmentSubmit    = new SubSiteFeeService().IsEnrollmentSubmit(data.ci.Id);
                    _Dto.IsVerified            = data.ci.IsVerified ?? false;

                    _Dto.uTaxNotCollectingSBFee = data.ci.uTaxNotCollectingSBFee ?? false;

                    _Dto.IsTaxReturn = true;
                    if (data.ci.ParentId == Guid.Empty || data.ci.ParentId == null)
                    {
                        var taxreturn = db.MainOfficeConfigurations.Where(x => x.emp_CustomerInformation_ID == data.ci.Id && x.StatusCode == EMPConstants.Active).FirstOrDefault();
                        if (taxreturn != null)
                        {
                            _Dto.IsTaxReturn = taxreturn.IsSiteTransmitTaxReturns;
                        }
                    }
                    _Dto.IsHold = data.ci.IsHold ?? false;

                    Guid TopParentId = Guid.Empty;
                    EntityHierarchyDTOs = ddService.GetEntityHierarchies(data.ci.Id);
                    var TopFromHierarchy = EntityHierarchyDTOs.OrderByDescending(o => o.Customer_Level).FirstOrDefault();
                    TopParentId = TopFromHierarchy.CustomerId ?? Guid.Empty;

                    DefaultBankModel DefaultBank = new DefaultBankModel();

                    DefaultBank = (from enrollbank in db.EnrollmentBankSelections
                                   where enrollbank.CustomerId == data.cli.CustomerOfficeId && enrollbank.StatusCode == EMPConstants.Active && enrollbank.BankSubmissionStatus == 1
                                   orderby enrollbank.BankSubmissionStatus descending, enrollbank.LastUpdatedDate descending
                                   select new DefaultBankModel {
                        BankId = enrollbank.BankId, BankSubmissionStatus = enrollbank.BankSubmissionStatus ?? 0, LastUpdatedDate = enrollbank.LastUpdatedDate
                    }).FirstOrDefault();

                    if (DefaultBank != null)
                    {
                        _Dto.BankId = DefaultBank.BankId;
                    }
                    else
                    {
                        DefaultBankModel DefaultBank2 = (from enrollbank in db.EnrollmentBankSelections
                                                         where enrollbank.CustomerId == data.cli.CustomerOfficeId && enrollbank.StatusCode == EMPConstants.Active
                                                         orderby enrollbank.BankSubmissionStatus descending, enrollbank.LastUpdatedDate descending
                                                         select new DefaultBankModel {
                            BankId = enrollbank.BankId, BankSubmissionStatus = enrollbank.BankSubmissionStatus ?? 0, LastUpdatedDate = enrollbank.LastUpdatedDate
                        }).FirstOrDefault();

                        if (DefaultBank2 != null)
                        {
                            _Dto.BankId = DefaultBank2.BankId;
                        }
                    }


                    if (_Dto.EntityID != (int)EMPConstants.Entity.SO && _Dto.EntityID != (int)EMPConstants.Entity.SOME && _Dto.EntityID != (int)EMPConstants.Entity.SOME_SS && _Dto.BankId != Guid.Empty)
                    {
                        var SSBConfig = db.SubSiteBankConfigs.Where(o => o.emp_CustomerInformation_ID == TopParentId && o.BankMaster_ID == _Dto.BankId).ToList();
                        if (SSBConfig.Count() == 0)
                        {
                            _Dto.BankId = Guid.Empty;
                        }
                    }

                    if (TopParentId != Guid.Empty)
                    {
                        if (TopParentId == data.ci.Id)
                        {
                            _Dto.CanSubSiteLoginToEmp = true;
                        }
                        else
                        {
                            if (_Dto.BaseEntityId == (int)EMPConstants.BaseEntities.AE_SS)
                            {
                                // _Dto.CanSubSiteLoginToEmp = db.SubSiteOfficeConfigs.Where(a => a.RefId.ToString() == _Dto.ParentID).Select(a => a.CanSubSiteLoginToEmp ?? false).FirstOrDefault();
                                //var SupParentData = db.emp_CustomerInformation.Where(o => o.Id == data.ci.ParentId).FirstOrDefault();
                                //if (SupParentData != null)
                                //{
                                _Dto.SupParentID = TopParentId.ToString();

                                var sscExist = (from ssc in db.SubSiteConfigurations where ssc.emp_CustomerInformation_ID == TopParentId select ssc).FirstOrDefault();
                                if (sscExist != null)
                                {
                                    if (sscExist.IsuTaxManageingEnrolling == true)
                                    {
                                        _Dto.CanSubSiteLoginToEmp = true;
                                    }
                                    else
                                    {
                                        if (sscExist.IsuTaxPortalEnrollment == true)
                                        {
                                            _Dto.CanSubSiteLoginToEmp = true;
                                        }
                                        else
                                        {
                                            _Dto.CanSubSiteLoginToEmp = false;
                                        }
                                    }
                                }



                                var subSiteOfficeCo = (from ssc in db.SubSiteOfficeConfigs where ssc.RefId == _Dto.CustomerOfficeId select ssc).FirstOrDefault();
                                if (subSiteOfficeCo != null)
                                {
                                    if (subSiteOfficeCo.EFINListedOtherOffice == false)
                                    {
                                        _Dto.EFINOwnerUserId = false;
                                    }
                                    else
                                    {
                                        if (subSiteOfficeCo.SiteOwnthisEFIN == false)
                                        {
                                            _Dto.EFINOwnerUserId = true;
                                        }
                                        else
                                        {
                                            _Dto.EFINOwnerUserId = false;
                                        }
                                    }
                                }
                                //}
                            }
                            else
                            {
                                // _Dto.CanSubSiteLoginToEmp = db.SubSiteConfigurations.Where(a => a.emp_CustomerInformation_ID.ToString() == _Dto.ParentID).Select(a => a.CanSubSiteLoginToEmp).FirstOrDefault();

                                var sscExist = (from ssc in db.SubSiteConfigurations where ssc.emp_CustomerInformation_ID == TopParentId select ssc).FirstOrDefault();
                                if (sscExist != null)
                                {
                                    if (sscExist.IsuTaxManageingEnrolling == true)
                                    {
                                        _Dto.CanSubSiteLoginToEmp = true;
                                    }
                                    else
                                    {
                                        if (sscExist.IsuTaxPortalEnrollment == true)
                                        {
                                            _Dto.CanSubSiteLoginToEmp = true;
                                        }
                                        else
                                        {
                                            _Dto.CanSubSiteLoginToEmp = false;
                                        }
                                    }
                                }


                                var subSiteOfficeCo = (from ssc in db.SubSiteOfficeConfigs where ssc.RefId == _Dto.CustomerOfficeId select ssc).FirstOrDefault();
                                if (subSiteOfficeCo != null)
                                {
                                    if (subSiteOfficeCo.EFINListedOtherOffice == false)
                                    {
                                        _Dto.EFINOwnerUserId = false;
                                    }
                                    else
                                    {
                                        if (subSiteOfficeCo.SiteOwnthisEFIN == false)
                                        {
                                            _Dto.EFINOwnerUserId = true;
                                        }
                                        else
                                        {
                                            _Dto.EFINOwnerUserId = false;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        _Dto.CanSubSiteLoginToEmp = true;
                    }


                    if (_Dto.EntityID == (int)EMPConstants.Entity.SOME_SS)
                    {
                        _Dto.CanSubSiteLoginToEmp = true;
                    }

                    EntityHierarchyDTOs = ddService.GetEntityHierarchies(_Dto.Id);

                    Guid ParentId = Guid.Empty;
                    int  Level    = EntityHierarchyDTOs.Count;
                    if (EntityHierarchyDTOs.Count > 0)
                    {
                        var LevelOne = EntityHierarchyDTOs.OrderByDescending(o => o.Customer_Level).FirstOrDefault();
                        if (LevelOne != null)
                        {
                            ParentId = LevelOne.CustomerId ?? Guid.Empty;
                        }

                        if (EntityHierarchyDTOs.Count > 1)
                        {
                            _Dto.IsMSOUser = db.emp_CustomerInformation.Where(o => o.Id == ParentId).Select(o => o.IsMSOUser).FirstOrDefault() ?? false;
                        }
                    }
                }
                else
                {
                    return(null);
                }
                return(_Dto);
            }
            catch (Exception ex)
            {
                ExceptionLogger.LogException(ex.ToString(), "CustomerLogin/Get", Guid.Empty);
                return(null);
            }
        }
Ejemplo n.º 13
0
 public ActionResult Login(CustomerLoginModel objCustomerLoginModel)
 {
     return(View(objCustomerLoginModel));
 }
Ejemplo n.º 14
0
        public ResponseBaseViewModel <LoginResponseViewModel> MojoryLogin([FromBody] LoginRequestViewModel request)
        {
            string token = this.GetToken();
            ICustomerDomainFactory factory = new CustomerDomainFactory();
            var domain = factory.CreateVerifyCustomerDomainObj();

            CustomerLoginModel loginModel = new CustomerLoginModel
            {
                Password        = request.Password,
                UserId          = request.UserId,
                CorpId          = request.CorpId,
                Token           = token,
                ClientId        = request.ClientId,
                ClientType      = this.GetOrderSource(),
                IsCheckClientId = request.IsCheckClientId
            };
            //为了appstore审核通过

            /*
             * if (request.CorpId.ToLower().Trim() == "mzl")
             * {
             *  loginModel.IsCheckClientId = false;
             * }
             */
            string clientId = request.ClientId;
            ITokenDomainFactory tokenFactory = new TokenDomainFactory();
            var tokenDomain = tokenFactory.CreateDomainObj();

            domain.TokenEvent += tokenDomain.UpdateUserToken;
            CustomerInfoModel customer = domain.DoLogin(loginModel);

            domain.TokenEvent -= tokenDomain.UpdateUserToken;

            ResponseBaseViewModel <LoginResponseViewModel> v = new ResponseBaseViewModel <LoginResponseViewModel> ();

            if (customer == null)
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = -1, Message = "用户名或密码失败"
                }
            }
            ;
            else if (clientId != loginModel.ClientId && !string.IsNullOrWhiteSpace(clientId))
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = -2, Message = "设备ID与原ID不同"
                };
            }
            else
            {
                v.Flag = new ResponseCodeViewModel()
                {
                    Code = 0, Message = "success", MojoryToken = token
                };
                v.Data = new LoginResponseViewModel();
            }

            return(v);
        }
Ejemplo n.º 15
0
        /// <summary>
        /// 登录
        /// </summary>
        public CustomerInfoModel DoLogin(CustomerLoginModel loginModel)
        {
            if (string.IsNullOrEmpty(loginModel.CorpId))
            {
                throw new Exception("公司代码不能为空");
            }
            //判断是否是商旅客户
            CorporationModel corporationModel = _corporationBll.GetCorpInfoByCorpId(loginModel.CorpId);

            if (corporationModel == null || string.IsNullOrEmpty(corporationModel.IsAmplitudeCorp) ||
                corporationModel.IsAmplitudeCorp.ToUpper() == "F")
            {
                throw new Exception("没有开通差旅功能,请联系客服开通");
            }

            //1.根据用户名,密码,公司代码,验证身份
            CustomerInfoModel customerInfo = _verifyBll.VerifyCustomer(loginModel);


            if (customerInfo == null)
            {
                return(null);
            }

            if (!string.IsNullOrEmpty(customerInfo.IsLock) && customerInfo.IsLock.ToUpper() == "T")
            {
                throw new Exception("该客户已经被冻结,请先解冻再登录");
            }
            if (!string.IsNullOrEmpty(customerInfo.IsDel) && customerInfo.IsDel.ToUpper() == "T")
            {
                throw new Exception("该客户已经被删除,无法登录");
            }

            //2.验证通过后,将token,UserId(key-value)保存到Redis中(事件方式)
            TokenEvent?.Invoke(this,
                               new TokenEventArgs(loginModel.Token, customerInfo.UserId, customerInfo.Cid, loginModel.ClientType));

            //当前个性化如果设置需要短信验证则IsCheckClientId为true
            if ((corporationModel?.IsNoteVerify ?? 0) == 0)
            {
                loginModel.IsCheckClientId = false;
            }
            else
            {
                loginModel.IsCheckClientId = true;
            }


            if (!(loginModel.IsCheckClientId ?? false) && !string.IsNullOrEmpty(loginModel.ClientId))
            {
                //3.更新设备id
                _addAppClientIdServiceBll.AddAppClientId(new AddAppClientIdModel()
                {
                    Cid        = customerInfo.Cid,
                    ClientId   = loginModel.ClientId,
                    ClientType = loginModel.ClientType
                });
            }

            //3.获取设备id
            loginModel.ClientId = _addAppClientIdServiceBll.GetAppClientId(customerInfo.Cid);



            return(customerInfo);
        }
Ejemplo n.º 16
0
        public HttpResponseMessage PostLogin(CustomerLoginModel value)
        {
            if (string.IsNullOrWhiteSpace(value.UserName) || string.IsNullOrWhiteSpace(value.Password))
            {
                return(ReturnResult(string.Empty, 1, "不能传入空的参数值"));
            }

            try
            {
                var checkResult = ValidateSignature(value.Signature, value.timestamp, value.Nonce, value.AppCode);

                if (!checkResult)
                {
                    return(ReturnResult(string.Empty, 1, "不合法的登录方式,您的IP将会被限制访问"));
                }
                var      loginResult = _customerRegistrationService.ValidateCustomer(value.UserName, value.Password);
                var      errorMessge = string.Empty;
                Customer customer    = new Customer();
                switch (loginResult)
                {
                case CustomerLoginResults.Successful:
                {
                    //if (customer == null){
                    customer = _customerService.GetCustomerByUsername(value.UserName);
                    //}
                    //sign in new customer
                    _authenticationService.SignIn(customer, true);
                }
                break;

                case CustomerLoginResults.CustomerNotExist:
                    errorMessge = _localizationService.GetResource("Account.Login.WrongCredentials.CustomerNotExist");
                    break;

                case CustomerLoginResults.Deleted:
                    errorMessge = _localizationService.GetResource("Account.Login.WrongCredentials.Deleted");
                    break;

                case CustomerLoginResults.NotActive:
                    errorMessge = _localizationService.GetResource("Account.Login.WrongCredentials.NotActive");
                    break;

                case CustomerLoginResults.NotRegistered:
                    errorMessge = _localizationService.GetResource("Account.Login.WrongCredentials.NotRegistered");
                    break;

                case CustomerLoginResults.WrongPassword:
                default:
                    errorMessge = _localizationService.GetResource("Account.Login.WrongCredentials");
                    break;
                }
                if (!string.IsNullOrWhiteSpace(errorMessge))
                {
                    return(ReturnResult(string.Empty, 1, errorMessge));
                }
                else
                {
                    var result = new
                    {
                        token     = WebApiValidate.GetApiValidateToken(customer.Id),
                        id        = customer.Id,
                        username  = customer.Username,
                        email     = customer.Email.ConvertToString(),
                        firstname = customer.GetAttribute <string>(SystemCustomerAttributeNames.FirstName).ConvertToString(),
                        lastname  = customer.GetAttribute <string>(SystemCustomerAttributeNames.LastName).ConvertToString(),
                        imageurl  = _pictureService.GetPictureUrl(
                            customer.GetAttribute <int>(SystemCustomerAttributeNames.AvatarPictureId),
                            _mediaSettings.AvatarPictureSize,
                            false).ConvertToString()
                    };

                    return(ReturnResult(result, 0, string.Empty));
                }
            }
            catch (Exception ex)
            {
                LogException(ex);
                return(ReturnResult(string.Empty, 1, "读取数据出现错误"));
            }
        }
Ejemplo n.º 17
0
 public CustomerLoginModel IsUserExist(CustomerLoginModel _Dto)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 18
0
        public CustomerLoginModel getCustomerInfoById(string Id)
        {
            CustomerLoginModel _Dto = new CustomerLoginModel();
            Guid UserId;

            if (!Guid.TryParse(Id, out UserId))
            {
                return(null);
            }

            try
            {
                db = new DatabaseEntities();
                //var data2 = db.emp_CustomerLoginInformation.ToList();
                var data = (from ci in db.emp_CustomerInformation
                            join cli in db.emp_CustomerLoginInformation on ci.Id equals cli.CustomerOfficeId
                            join entMas in db.EntityMasters on ci.EntityId equals entMas.Id
                            where ci.Id == UserId && ci.StatusCode == EMPConstants.Created
                            select new { ci, cli, entMas.Id, entMas.BaseEntityId }).FirstOrDefault();

                if (data != null)
                {
                    _Dto.Id = data.cli.Id;
                    _Dto.CustomerOfficeId = data.cli.CustomerOfficeId;
                    //11212016
                    _Dto.EFIN       = data.ci.EFIN;
                    _Dto.EFINStatus = data.ci.EFINStatus;

                    _Dto.TaxOfficeUsername     = data.cli.TaxOfficeUsername;
                    _Dto.CrossLinkUserId       = data.cli.CrossLinkUserId;
                    _Dto.EntityID              = data.ci.EntityId;//.ToString();
                    _Dto.IsChangedPassword     = (data.cli.CrossLinkPassword == data.cli.EMPPassword) ? true : false;
                    _Dto.IsSetSecurityQuestion = db.SecurityAnswerUserMaps.Where(o => o.UserId == data.cli.CustomerOfficeId).Any();
                    _Dto.Token       = _TokenService.GenerateToken(data.cli.Id);
                    _Dto.ParentID    = data.ci.ParentId.ToString();
                    _Dto.SalesYearID = data.ci.SalesYearID.ToString();
                    //_Dto.EntityDisplayID = data.DisplayId;
                    _Dto.BaseEntityId          = data.BaseEntityId;
                    _Dto.IsMSOUser             = data.ci.IsMSOUser ?? false;
                    _Dto.IsActivationCompleted = data.ci.IsActivationCompleted ?? 0;
                    _Dto.IsEnrollmentSubmit    = new SubSiteFeeService().IsEnrollmentSubmit(data.ci.Id);


                    //if (!string.IsNullOrEmpty(_Dto.ParentID))
                    //{
                    //    if (_Dto.BaseEntityId == (int)EMPConstants.BaseEntities.SOME)
                    //    {
                    //        // _Dto.CanSubSiteLoginToEmp = db.SubSiteOfficeConfigs.Where(a => a.RefId.ToString() == _Dto.ParentID).Select(a => a.CanSubSiteLoginToEmp ?? false).FirstOrDefault();
                    //        var SupParentData = db.emp_CustomerInformation.Where(o => o.Id == data.ci.ParentId).FirstOrDefault();
                    //        if (SupParentData != null)
                    //        {
                    //            _Dto.SupParentID = SupParentData.ParentId.ToString();

                    //            var sscExist = (from ssc in db.SubSiteConfigurations where ssc.emp_CustomerInformation_ID.ToString() == _Dto.SupParentID select ssc).FirstOrDefault();
                    //            if (sscExist != null)
                    //            {
                    //                if (sscExist.IsuTaxManageingEnrolling == true)
                    //                    _Dto.CanSubSiteLoginToEmp = true;
                    //                else
                    //                {
                    //                    if (sscExist.IsuTaxPortalEnrollment == true)
                    //                        _Dto.CanSubSiteLoginToEmp = true;
                    //                    else
                    //                        _Dto.CanSubSiteLoginToEmp = false;
                    //                }
                    //            }
                    //        }


                    //    }
                    //    else
                    //    {
                    //        // _Dto.CanSubSiteLoginToEmp = db.SubSiteConfigurations.Where(a => a.emp_CustomerInformation_ID.ToString() == _Dto.ParentID).Select(a => a.CanSubSiteLoginToEmp).FirstOrDefault();

                    //        var sscExist = (from ssc in db.SubSiteConfigurations where ssc.emp_CustomerInformation_ID.ToString() == _Dto.ParentID select ssc).FirstOrDefault();
                    //        if (sscExist != null)
                    //        {
                    //            if (sscExist.IsuTaxManageingEnrolling == true)
                    //                _Dto.CanSubSiteLoginToEmp = true;
                    //            else
                    //            {
                    //                if (sscExist.IsuTaxPortalEnrollment == true)
                    //                    _Dto.CanSubSiteLoginToEmp = true;
                    //                else
                    //                    _Dto.CanSubSiteLoginToEmp = false;
                    //            }
                    //        }
                    //    }

                    //}
                    //else
                    //{
                    //    _Dto.CanSubSiteLoginToEmp = true;
                    //}
                }
                else
                {
                    return(null);
                }

                return(_Dto);
            }
            catch (Exception ex)
            {
                ExceptionLogger.LogException(ex.ToString(), "CustomerLogin/GetCustomer", UserId);
                return(null);
            }
        }