/// <summary> /// 获取实例 /// </summary> /// <returns></returns> public static InitFactory GetInstance() { InitFactory factory = null; Type type = BridgeObject.GetCustomerOperateHandleTypes().Where(x => x.BaseType == typeof(InitFactory)).FirstOrDefault(); if (type != null) { object obj = Activator.CreateInstance(type); return(obj as InitFactory); } return(factory); }
void ProcessBridgeObject(BridgeObject bo) { BridgeGameObjectSync bgos; if (!bridgeGameObjects.ContainsKey(bo.name)) { GameObject go = new GameObject(bo.name); bgos = go.AddComponent <BridgeGameObjectSync>(); go.transform.parent = BridgeObjectsContainer != null ? BridgeObjectsContainer.transform : transform; bridgeGameObjects.Add(bo.name, bgos); } bgos = bridgeGameObjects[bo.name]; bgos.Bind(bo); }
public static BridgeObject ParseJson(Dictionary <string, object> obj) { const string KEY_UVS = "uvs"; const string KEY_VERTICES = "vertices"; const string KEY_MATS = "materials"; const string KEY_MAT_SPEC_COLOR = "specular_color"; const string KEY_MAT_AMBIENT = "ambient"; const string KEY_MAT_SPEC_SHADER = "specular_shader"; const string KEY_MAT_DIFFUSE_SHADER = "diffuse_shader"; const string KEY_MAT_NAME = "name"; const string KEY_MAT_DIFFUSE_INTENSITY = "diffuse_intensity"; const string KEY_MAT_DIFFUSE_COLOR = "diffuse_color"; const string KEY_MAT_ALPHA = "alpha"; const string KEY_MAT_SPEC_INTENSITY = "specular_intensity"; const string KEY_NAME = "name"; const string KEY_NORMALS = "normals"; const string KEY_FACES = "faces"; const string KEY_FACE_MATS = "face_materials"; List <object> verts_ = obj.ContainsKey(KEY_VERTICES) ? (obj[KEY_VERTICES] as List <object>) : new List <object>(); List <object> norms_ = obj.ContainsKey(KEY_NORMALS) ? (obj[KEY_NORMALS] as List <object>) : new List <object>(); List <object> faces_ = obj.ContainsKey(KEY_FACES) ? (obj[KEY_FACES] as List <object>) : new List <object>(); string name_ = obj.ContainsKey(KEY_NAME) ? (obj[KEY_NAME] as string) : ""; BridgeObject bo = new BridgeObject(); foreach (var vert in verts_) { var vertList = vert as List <object>; bo.verts.Add(CreateVector3((double)vertList[0], (double)vertList[1], (double)vertList[2])); } foreach (var norm in norms_) { var normList = norm as List <object>; bo.normals.Add(CreateVector3((double)normList[0], (double)normList[1], (double)normList[2])); } foreach (var face in faces_) { bo.faces.Add(Convert.ToInt32(face)); } bo.name = name_; return(bo); }
void ProcessQueue() { if (queue.Count == 0) { return; } string data = queue.Dequeue(); var json = Json.Deserialize(data) as Dictionary <string, object>; BridgeObject bo = BridgeObject.ParseJson(json); if (bo != null) { ProcessBridgeObject(bo); } }
public void Bind(BridgeObject bo) { bo.BindMeshFilter(GetComponent <MeshFilter>()); bo.BindMeshRenderer(GetComponent <MeshRenderer>()); }
/// <summary> /// 获取用户的功能(菜单或网格按钮)权限,返回字典, /// 字典的第一个参数为功能Id(菜单或按钮Id),第二个 /// 参数为是否来自父角色的权限,非当前角色权限 /// </summary> /// <param name="userId">用户Id</param> /// <param name="functionType">功能类型(菜单、网格按钮),0-菜单,1-按钮</param> /// <param name="moduleId">模块ID,按钮时需要</param> /// <returns></returns> public Dictionary <Guid, bool> GetUserFunPermissions(Guid userId, int functionType, Guid?moduleId) { ISys_PermissionFunDAL permissionDal = BridgeObject.Resolve <ISys_PermissionFunDAL>(this.CurrUser); return(permissionDal.GetUserFunPermissions(userId, functionType, moduleId)); }
/// <summary> /// 获取用户(查看、新增、编辑)字段权限 /// </summary> /// <param name="userId">用户Id</param> /// <param name="moduleId">模块Id</param> /// <param name="fieldPermissionType">字段权限类型,0-查看,1-新增,2-编辑</param> /// <returns>返回允许(查看、新增、编辑)的字段名集合</returns> public List <string> GetUserFieldsPermissions(Guid userId, Guid moduleId, int fieldPermissionType) { ISys_PermissionFieldDAL permissionDal = BridgeObject.Resolve <ISys_PermissionFieldDAL>(this.CurrUser); return(permissionDal.GetUserFieldsPermissions(userId, moduleId, fieldPermissionType)); }
/// <summary> /// 获取角色(查看、新增、编辑)字段权限,返回允许(查看、新增、编辑)的字段名字典, /// 第一个参数为字段名,第二个参数为是否来自父角色的权限, /// 非当前角色权限 /// </summary> /// <param name="roleId">角色Id</param> /// <param name="moduleId">模块Id</param> /// <param name="fieldPermissionType">字段权限类型,0-查看,1-新增,2-编辑</param> /// <param name="read">是否为应用读取,应用读取快速返回</param> /// <returns>返回允许(查看、新增、编辑)的字段名字典</returns> public Dictionary <string, bool> GetRoleFieldPermissions(Guid roleId, Guid moduleId, int fieldPermissionType, bool read = false) { ISys_PermissionFieldDAL permissionDal = BridgeObject.Resolve <ISys_PermissionFieldDAL>(this.CurrUser); return(permissionDal.GetRoleFieldPermissions(roleId, moduleId, fieldPermissionType, read)); }