public void AddSyncData(string id, SyncData syncData)
 {
     if (ContainsScreen(id))
     {
         var data = _syncInfoTable[id].SyncDatas.Find(s => s.SyncType == syncData.SyncType);
         if (data == null)
         {
             _syncInfoTable[id].SyncDatas.Add(syncData);
         }
         else
         {
             _logService.Debug(string.Format("<-{0}->:ThreadID={1}", "AddSyncData", System.Threading.Thread.GetDomainID().ToString()));
             UpdateSyncData(id, syncData);
         }
     }
     else
     {
         var syncInformation = new SyncInformation();
         syncInformation.Sn        = id;
         syncInformation.SyncDatas = new List <SyncData>()
         {
             syncData
         };
         _syncInfoTable.Add(id, syncInformation);
     }
 }
Example #2
0
 public override async Task RequestSyncInfo(bool pIsFull = false)
 {
     // TODO: check status
     try
     {
         var res = await Bl.SyncDataAsync(pIsFull);
     }
     catch (Exception ex)
     {
         var SyncInfo = new SyncInformation()
         {
             Status = eSyncStatus.SyncFinishedError, StatusDescription = ex.Message, SyncData = ex
         };
         FileLogger.WriteLogMessage($"OnSyncInfoCollected Status=>{SyncInfo.Status} StatusDescription=>{SyncInfo.StatusDescription}", eTypeLog.Expanded);
         OnSyncInfoCollected?.Invoke(SyncInfo);
     }
 }
Example #3
0
        /// <summary>
        /// 删除用户
        /// </summary>
        /// <param name="isDeleted"></param>
        /// <param name="ids">用户ID字符串,多个以逗号隔开</param>
        /// <returns></returns>
        private ResponseModel UpdateIsDelete(CommonEnum.IsDeleted isDeleted, string ids)
        {
            using (_dbContext)
            {
                //var idList = ids.Split(",").ToList();
                //idList.ForEach(x => {
                //  _dbContext.Database.ExecuteSqlCommand($"UPDATE DncUser SET IsDeleted=1 WHERE Id = {x}");
                //});
                //_dbContext.Database.ExecuteSqlCommand($"UPDATE SystemUser SET IsDeleted={(int)isDeleted} WHERE SystemUserUuid IN ({ids})");
                //var parameters = ids.Split(",").Select((id, index) => new SqlParameter(string.Format("@p{0}", index), id)).ToList();
                //var parameterNames = string.Join(", ", parameters.Select(p => p.ParameterName));
                //var sql = string.Format("UPDATE SystemUser SET IsDeleted=@IsDeleted WHERE SystemUserUUID IN ({0})", parameterNames);
                //parameters.Add(new SqlParameter("@IsDeleted", (int)isDeleted));
                //_dbContext.Database.ExecuteSqlCommand(sql, parameters);
                //var response = ResponseModelFactory.CreateInstance;
                //return response;


                using (_dbContext)
                {
                    var parameters = ids.Split(",").Select((id, index) => new SqlParameter(string.Format("@p{0}", index), id)).ToList();
                    foreach (var item in parameters)
                    {
                        var query1 = _dbContext.SystemUser.FirstOrDefault(x => x.SystemUserUuid == Guid.Parse(item.Value.ToString()));
                        if (ConfigurationManager.HaikanPassport_IfUse)
                        {
                            var du = SyncInformation.DeleteUser(query1.LoginName);
                            if (int.Parse(du) <= 0)
                            {
                                continue;
                            }
                            query1.IsDeleted = 1;
                            _dbContext.SaveChanges();
                        }
                        else
                        {
                            query1.IsDeleted = 1;
                            _dbContext.SaveChanges();
                        }
                    }
                    var response = ResponseModelFactory.CreateInstance;
                    return(response);
                }
            }
        }
Example #4
0
        private async Task <SyncInformation> GetSyncInfoAsync()
        {
            var tableName = typeof(T).FullName;

            if (_syncInfo == null)
            {
                _syncInfo = await Connection.Table <SyncInformation>()
                            .Where(i => i.TableName == typeof(T).FullName)
                            .FirstOrDefaultAsync();

                if (_syncInfo == null)
                {
                    _syncInfo = new SyncInformation()
                    {
                        TableName           = typeof(T).FullName,
                        LastSynchronization = new DateTime(2014, 1, 1)
                    };
                    await DataAccess.SyncInfoRepository.InsertAsync(_syncInfo);
                }
            }
            return(_syncInfo);
        }
Example #5
0
        public string Test2()
        {
            var obj = SyncInformation.DeleteUser("xxx");

            return(JsonConvert.SerializeObject(obj));
        }
Example #6
0
        public IActionResult Edit(UserEditViewModel model)
        {
            var response = ResponseModelFactory.CreateInstance;

            if (ConfigurationManager.AppSettings.IsTrialVersion)
            {
                response.SetIsTrial();
                return(Ok(response));
            }
            using (_dbContext)
            {
                var entity = _dbContext.SystemUser.FirstOrDefault(x => x.SystemUserUuid == model.SystemUserUuid);
                if (entity == null)
                {
                    response.SetFailed("用户不存在");
                    return(Ok(response));
                }
                if (entity.LoginName != model.LoginName)
                {
                    response.SetFailed("用户民不可修改");
                    return(Ok(response));
                }
                //if (_dbContext.SystemUser.Count(x => x.LoginName == model.LoginName && x.SystemUserUuid != model.SystemUserUuid) > 0)
                //{
                //    response.SetFailed("登录名已存在");
                //    return Ok(response);
                //}
                if (model.UserIdCard != null && model.UserIdCard != "")
                {
                    if (entity.UserIdCard != model.UserIdCard)
                    {
                        if (_dbContext.SystemUser.Count(x => x.UserIdCard == model.UserIdCard) > 0)
                        {
                            response.SetFailed("身份证号已存在");
                            return(Ok(response));
                        }
                    }
                }
                if (model.SystemRoleUuid == null && model.SystemRoleUuid == "")
                {
                    response.SetFailed("请选择角色");
                    return(Ok(response));
                }
                if (entity.LoginName == model.LoginName && ConfigurationManager.HaikanPassport_IfUse)
                {
                    var uu = SyncInformation.UpdateUser(model.LoginName, model.PassWord.Trim(), model.OldCard);
                    if (!(int.Parse(uu) > 0))
                    {
                        response.SetFailed("修改统一身份信息失败");
                        return(Ok(response));
                    }
                }



                entity.LoginName      = model.LoginName;
                entity.RealName       = model.RealName;
                entity.UserIdCard     = model.UserIdCard;
                entity.SystemRoleUuid = model.SystemRoleUuid;
                entity.OldCard        = model.OldCard;
                if (Security.GenerateMD5(model.PassWord.Trim()) != entity.PassWord)
                {
                    //entity.PassWord = Haikan3.Utils.DesEncrypt.Encrypt(model.PassWord.Trim(), MdDesEncrypt.SecretKey);
                    entity.PassWord = Security.GenerateMD5(model.PassWord.Trim());
                }
                var rolename = _dbContext.SystemRole.FirstOrDefault(x => x.RoleName == "超级管理员");
                if (model.SystemRoleUuid.ToString().Contains(rolename.SystemRoleUuid.ToString()))
                {
                    entity.UserType = 0;
                }
                else
                {
                    entity.UserType = 2;
                }
                _dbContext.SaveChanges();
                //entity.UserType = model.UserType;
                //entity.ShopUuid = model.ShopUuid;
                //entity.VillageId = model.VillageId;
                //string temp = "";
                //for (int i = 0; i < model.SystemRoleUuid.Count; i++)
                //{
                //    temp += model.SystemRoleUuid[i] +",";
                //}
                //entity.SystemRoleUuid = temp.TrimEnd(',');
                //entity.IsDeleted = model.IsDeleted;
                //entity.OldCard = model.OldCard;
                //entity.Phone = model.Phone;
                _dbContext.Database.ExecuteSqlCommand("DELETE FROM SystemUserRoleMapping WHERE SystemUserUUID={0}", entity.SystemUserUuid);
                var success = true;
                ////循环加权限
                //for (int i = 0; i < model.SystemRoleUuid.Count; i++)
                //{
                if (!string.IsNullOrEmpty(model.SystemRoleUuid))
                {
                    var roles = new SystemUserRoleMapping();
                    roles.SystemUserUuid = entity.SystemUserUuid;
                    roles.SystemRoleUuid = Guid.Parse(model.SystemRoleUuid);
                    roles.AddTime        = DateTime.Now.ToString("yyyy-MM-dd");
                    roles.AddPeople      = AuthContextService.CurrentUser.DisplayName;

                    _dbContext.SystemUserRoleMapping.Add(roles);
                }
                //}
                success = _dbContext.SaveChanges() > 0;
                if (success)
                {
                    response.SetSuccess();
                }
                else
                {
                    _dbContext.Database.ExecuteSqlCommand("DELETE FROM SystemUser WHERE SystemUserUUID={0}", entity.SystemUserUuid);
                    response.SetFailed("保存用户角色数据失败");
                }
                response = ResponseModelFactory.CreateInstance;
                return(Ok(response));
            }
        }
Example #7
0
        public IActionResult Create(UserCreateViewModel model)
        {
            var response = ResponseModelFactory.CreateInstance;

            if (model.LoginName.Trim().Length <= 0)
            {
                response.SetFailed("请输入登录名称");
                return(Ok(response));
            }
            using (_dbContext)
            {
                //if (_dbContext.SystemUser.Count(x => x.LoginName == model.LoginName) > 0)
                //{
                //    response.SetFailed("登录名已存在");
                //    return Ok(response);
                //}
                if (model.UserIdCard != null && model.UserIdCard != "")
                {
                    if (_dbContext.SystemUser.Count(x => x.UserIdCard == model.UserIdCard) > 0)
                    {
                        response.SetFailed("身份证号已存在");
                        return(Ok(response));
                    }
                }
                if (model.SystemRoleUuid == null && model.SystemRoleUuid.ToString() == "")
                {
                    response.SetFailed("请选择角色");
                    return(Ok(response));
                }

                if (ConfigurationManager.HaikanPassport_IfUse)
                {
                    bool checkregister = false;

                    var obj = SyncInformation.CheckUserName(model.LoginName);
                    if (int.Parse(obj) > 0)
                    {
                        var cum = SyncInformation.CheckUserMail(model.OldCard);
                        if (int.Parse(cum) > 0)
                        {
                            //var cur = SyncInformation.CheckUserRegister(model.LoginName, model.OldCard);
                            var ru = SyncInformation.RegisterUser(model.LoginName, model.PassWord.Trim(), model.OldCard);
                            if (ru == "999")
                            {
                                checkregister = true;
                            }
                            else
                            {
                                if (ru == "-888")
                                {
                                    response.SetFailed("系统禁止注册中文用户名");
                                    return(Ok(response));
                                }
                                if (ru == "-999")
                                {
                                    response.SetFailed("当前禁止注册新用户");
                                    return(Ok(response));
                                }
                            }
                        }
                        else
                        {
                            if (cum == "-4")
                            {
                                response.SetFailed("Email 格式有误");
                                return(Ok(response));
                            }
                            if (cum == "-5")
                            {
                                response.SetFailed("Email 不允许注册");
                                return(Ok(response));
                            }
                            if (cum == "-6")
                            {
                                response.SetFailed("Email 已经被注册");
                                return(Ok(response));
                            }
                        }
                    }
                    else
                    {
                        if (obj == "-1")
                        {
                            response.SetFailed("用户名不合法");
                            return(Ok(response));
                        }
                        if (obj == "-2")
                        {
                            response.SetFailed("用户名包含不允许注册的词语");
                            return(Ok(response));
                        }
                        if (obj == "-3")
                        {
                            response.SetFailed("用户名已经存在");
                            return(Ok(response));
                        }
                    }
                    if (!checkregister)
                    {
                        response.SetFailed("用户统一身份注册失败");
                        return(Ok(response));
                    }
                }



                var entity = _mapper.Map <UserCreateViewModel, SystemUser>(model);
                entity.AddTime        = DateTime.Now.ToString("yyyy-MM-dd");
                entity.SystemUserUuid = Guid.NewGuid();
                entity.IsDeleted      = 0;
                entity.LoginName      = model.LoginName;
                entity.RealName       = model.RealName;
                //entity.PassWord = Haikan3.Utils.DesEncrypt.Encrypt(model.PassWord.Trim(), MdDesEncrypt.SecretKey);
                entity.PassWord       = Security.GenerateMD5(model.PassWord.Trim());
                entity.SystemRoleUuid = model.SystemRoleUuid.ToString();
                entity.UserIdCard     = model.UserIdCard;
                entity.OldCard        = model.OldCard;
                var rolename = _dbContext.SystemRole.FirstOrDefault(x => x.RoleName == "超级管理员");
                if (model.SystemRoleUuid.ToString().Contains(rolename.SystemRoleUuid.ToString()))
                {
                    entity.UserType = 0;
                }
                else
                {
                    entity.UserType = 2;
                }
                _dbContext.SystemUser.Add(entity);
                _dbContext.SaveChanges();


                //entity.SystemRoleUuid = "";
                //entity.PassWord = Haikan3.Utils.DesEncrypt.Encrypt(model.PassWord.Trim(), MdDesEncrypt.SecretKey);
                //for (int i = 0; i < model.SystemRoleUuid.Count; i++)
                //{
                //    entity.SystemRoleUuid += model.SystemRoleUuid[i] + ",";
                //}
                //entity.SystemRoleUuid = entity.SystemRoleUuid.TrimEnd(',');
                //entity.OldCard = model.OldCard;
                //entity.Phone = model.Phone;
                //_dbContext.SystemUser.Add(entity);
                //_dbContext.SaveChanges();

                _dbContext.Database.ExecuteSqlCommand("DELETE FROM SystemUserRoleMapping WHERE SystemUserUUID={0}", entity.SystemUserUuid);
                var success = true;
                if (model.SystemRoleUuid != null)
                {
                    var roles = new SystemUserRoleMapping();
                    roles.SystemUserUuid = entity.SystemUserUuid;
                    roles.SystemRoleUuid = model.SystemRoleUuid.Value;
                    roles.AddTime        = DateTime.Now.ToString("yyyy-MM-dd");
                    roles.AddPeople      = AuthContextService.CurrentUser.DisplayName;

                    _dbContext.SystemUserRoleMapping.Add(roles);
                }
                success = _dbContext.SaveChanges() > 0;
                if (success)
                {
                    response.SetSuccess();
                }
                else
                {
                    _dbContext.Database.ExecuteSqlCommand("DELETE FROM SystemUser WHERE SystemUserUUID={0}", entity.SystemUserUuid);
                    response.SetFailed("保存用户角色数据失败");
                }
                return(Ok(response));
            }
        }