Esempio n. 1
0
        /// <summary>
        /// 根据账号密码登录
        /// </summary>
        /// <returns></returns>
        public async Task <ApiResult <ShopBasicDto> > LoginAsync(StaffLoginDto parm)
        {
            var res = new ApiResult <ShopBasicDto> {
                statusCode = (int)ApiEnum.ParameterError
            };
            //先查询员工账号是否可以登录,如果可以,根据员工的归属加盟商,在查询对应的加盟商
            var staffModel = ErpStaffDb.GetSingle(m => m.LoginName == parm.loginName);

            if (staffModel == null)
            {
                res.message = "登录账号错误";
                return(await Task.Run(() => res));
            }
            //判断密码
            parm.loginPwd = DES3Encrypt.EncryptString(parm.loginPwd);
            if (staffModel.LoginPwd != parm.loginPwd)
            {
                res.message = "密码错误";
                return(await Task.Run(() => res));
            }
            if (staffModel.Status != 0)
            {
                res.message = "账号被冻结,请联系管理员";
                return(await Task.Run(() => res));
            }
            //根据商铺ID查询店铺信息,以及修改账号登录信息
            staffModel.LoginCount   += 1;
            staffModel.LastLoginDate = DateTime.Now;
            staffModel.UpLoginDate   = staffModel.LastLoginDate;
            staffModel.IsDevice      = parm.isDevice;
            staffModel.DeviceName    = parm.deviceName;
            staffModel.Token         = parm.token;
            //修改员工信息
            ErpStaffDb.Update(staffModel);

            //根据员工的关联的加盟商ID,查询加盟商信息
            var shopModel = ErpShopsDb.GetSingle(m => m.Guid == staffModel.ShopGuid);

            if (shopModel == null)
            {
                res.message = "店铺不存在!";
                return(await Task.Run(() => res));
            }
            res.statusCode = (int)ApiEnum.Status;
            res.data       = new ShopBasicDto()
            {
                StaffGuid = staffModel.Guid,
                ShopGuid  = shopModel.Guid,
                ShopName  = shopModel.ShopName,
                AdminName = staffModel.TrueName,
                Mobile    = staffModel.Mobile
            };
            return(await Task.Run(() => res));
        }
Esempio n. 2
0
 public async Task <ApiResult <ShopBasicDto> > LoginAsync(StaffLoginDto parm)
 {
     return(await _staffService.LoginAsync(parm));
 }